算法的概念 优秀教案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

算法的概念

【教学目标】

1.了解算法的含义,体会算法的思想。

2.能够用自然语言叙述算法。

3.掌握正确的算法应满足的要求。

【教学重点】

算法的含义、解二元一次方程组和判断一个数为质数的算法设计。

【教学难点】

把自然语言转化为算法语言。

【教学过程】

一、情境导入:

算法作为一个名词,在中学教科书中并没有出现过,我们在基础教育阶段还没有接触算法概念。但是我们却从小学就开始接触算法,熟悉许多问题的算法。如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。我们知道解一元二次方程的算法,求解一元一次不等式、一元二次不等式的算法,解线性方程组的算法,求两个数的最大公因数的算法等。因此,算法其实是重要的数学对象。

二、探索研究

算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程。后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。

广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。

三、例题分析

例1.任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判定。

解析:根据质数的定义判断

解:算法如下:

第一步:判断n是否等于2,若n=2,则n是质数;若n>2,则执行第二步。

第二步:依次从2至(n-1)检验是不是n的因数,即整除n的数,若有这样的数,则n

不是质数;若没有这样的数,则n 是质数。

这是判断一个大于1的整数n 是否为质数的最基本算法。

点评:通过例1明确算法具有两个主要特点:有限性和确定性。

变式训练1:一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物。没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊。请设计过河的算法。

解:算法或步骤如下:

S 1 人带两只狼过河;

S 2 人自己返回;

S 3 人带一只羚羊过河;

S 4 人带两只狼返回;

S 5 人带两只羚羊过河;

S6 人自己返回;

S7 人带两只狼过河;

S8 人自己返回;

S9 人带一只狼过河。

例2 给出求解方程组274511x y x y +=⎧⎨+=⎩

的一个算法。 解析:解线性方程组的常用方法是加减消元法和代入消元法,这两种方法没有本质的差别,为了适用于解一般的线性方程组,以便于在计算机上实现,我们用高斯消元法(即先将方程组化为一个三角形方程组,在通过回代过程求出方程组的解)解线性方程组。

解:用消元法解这个方程组,步骤是:

第一步:方程①不动,将方程②中x 的系数除以方程①中x 的系数,得到乘数422

m =

=; 第二步:方程②减去m 乘以方程①,消去方程②中的x 项,得到 2733x y y +=⎧⎨=-⎩

; 第三步:将上面的方程组自下而上回代求解,得到1y =-,4x =。

所以原方程组的解为41x y =⎧⎨=-⎩

。 点评:通过例2再次明确算法特点:有限性和确定性

变式训练2:写出求过两点M(-2,-1)、N(2,3)的直线与坐标轴围成面积的一个算法。 解:算法:第一步:取x 1=-2,y 1=-1,x 2=2,y 2=3; 第二步:计算1

21121x x x x y y y y --=--; 第三步:在第二步结果中令x=0得到y 的值m ,得直线与y 轴交点(0,m);

第四步:在第二步结果中令y=0得到x 的值n ,得直线与x 轴交点(n ,0);

第五步:计算S=||||2

1n m ∙; 第六步:输出运算结果

例3 用二分法设计一个求解方程x2–2=0的近似根的算法。

算法分析:回顾二分法解方程的过程,并假设所求近似根与准确解的差的绝对值不超过0.005,则不难设计出以下步骤:

第一步:令f(x)=x 2–2.因为f (1)<0,f (2)>0,所以设x 1=1,x 2=2.

第二步:令m=(x 1+x 2)/2,判断f(m)是否为0,若则,则m 为所长;若否,则继续判断f(x 1)·

f(m)大于0还是小于0.

第三步:若f(x 1)·f(m)>0,则令x 1=m ;否则,令x 2=m 。

第四步:判断|x 1–x 2|<0.005是否成立?若是,则x 1.x 2之间的任意取值均为满足条件的近似根;若否,则返回第二

点评:渗透循环的思想,为后面教学做铺垫。

变式训练3 给出求1+2+3+4+5的一个算法。

解: 算法1 按照逐一相加的程序进行。

第一步:计算1+2,得到3;

第二步:将第一步中的运算结果3与3相加,得到6;

第三步:将第二步中的运算结果6与4相加,得到10;

第四步:将第三步中的运算结果10与5相加,得到15.

算法2 运用公式123n +++

+=

2)1(+n n 直接计算。 第一步:取n =5; 第二步:计算2)1(+n n ; 第三步:输出运算结果。

算法3 用循环方法求和。

第一步:使1S =,;

第二步:使2

I=;

第三步:使S S I

=+;

第四步:使1

I I

=+;

第五步:如果5

I≤,则返回第三步,否则输出S。

点评:一个问题的算法可能不唯一。

四、回顾小结

1.算法的概念:对一类问题的机械的、统一的求解方法。算法是由基本运算及规定的运算顺序所构成的完整的解题步骤,或者是按照要求设计好的有限的计算序列,并且这样的步骤或序列能解决一类问题。

2.算法的重要特征:

(1)有限性:一个算法在执行有限步后必须结束;

(2)确定性:算法的每一个步骤和次序必须是确定的;

(3)输入:一个算法有0个或多个输入,以刻划运算对象的初始条件。所谓0个输入是指算法本身定出了初始条件。

(4)输出:一个算法有1个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的。

5.课后作业

写出求

111

1

23100

++++的一个算法

解:

第一步:使1

S=,;第二步:使2

I=;

第三步:使

1

n

I =;

第四步:使S S n

=+;

第五步:使1

I I

=+;

第六步:如果100

I≤,则返回第三步,否则输出S。

相关文档
最新文档