资源描述
§1.1算法的含义
江苏省南通第一中学 胡立军
【教学目标】
1.体会算法的思想,了解算法的含义;
2.通过实例分析理解算法的有限性和确定性;
3.能用自然语言描述简单的算法过程.
【教学重点与难点】
教学重点:通过实例体会算法思想,初步理解算法的含义.
教学难点:算法概念以及用自然语言描述算法.
【教学方法】主动参与、合作交流相结合;启发、评议相结合
【教学过程】
一、创设情境,引入新课
引例1:大家熟悉的2000年春晚小品“钟点工”,宋丹丹问赵本山:把大象装入冰箱分几步?
第一步 把冰箱打开
第二步 把大象放进冰箱
第三步 把冰箱门关上.
引例2:中央二套有一档娱乐节目“幸运52”,主持人李咏让参加者猜商品的价格,猜对了可以获得该商品.商品价格在0~400,猜好后,主持人说是高了,还是低了,然后再猜,直到猜中为止.在这游戏中,较好的方法就是二分法:
第一步 报200
第二步 如果是说高了,就再报100;如果低了,就报300
第三步 在前一个数与再前一个数之间,取它们的中间值,直到猜中为止.
引例3:现有九个大小相同的小球,已知里面有一个空心小球比其它的要轻,只用天平(没有砝码),怎样快速地找出哪一只是空心小球?
方法一:(将小球分成四组,每组2球,余一球)
第一步 任取两组小球进行比较,如果天平不平衡,则较轻的一边含空球,则进行第三步;如果天平平衡,则进行第二步.
第二步 取下这两组小球,再放入下组小球进行称量,直到天平不平衡为止,偏轻的那一边是空球,进行第三步;若天平一直平衡,则未称的那一只是空球.
第三步 取出含空球的那两球进行比较,较轻的那一只就是空球.
方法二:(将小球分成两组,每组4球,余一球)
第一步 将两组分别放在天平的两边.如果天平不平衡,则空球在较轻的那一组;如果天平平衡,则未称的那一只是空球.
第二步 取出含空球的那一组,从中各任取两球放在天平的两边.则较轻的那一组中有空球
第三步 取出含空球的那两球进行比较,则较轻的那一只就是空球.
方法三:(将小球分成三组,每组3球)
第一步 将两组分别放在天平的两边.如果天平不平衡,则空球在较轻的那一组;如果天平平衡,则空球在未称的那一组里.
第二步 取出含空球的那一组,从中任取两球放在天平的两边.如果天平不平衡,则较轻的那一边就是空球;如果天平平衡,则未称的那一枚是空球.
二、主观参与,感知概念
再请学生举一些日常生活中算法的例子,从而使学生再次感受算法的思想.
【体会】
1. 算法的广义理解——为解决某一问题而采取的方法和步骤.
2.算法具有不唯一性.
三、合作交流,形成概念
例1:给出求1+2+3+4+5的一个算法.
学生一:按照逐一相加的程序进行
第一步 计算1+2,得到3
第二步 将第一步中的运算结果3与3相加,得到6
第三步 将第二步中的运算结果6与4相加,得到lO
第四步 将第三步中的运算结果1O与5相加,得到15
学生二:可以运用公式1+2+3+4+… +n= 直接计算
第一步 取n=5
第二步 计算
第三步 输出运算结果
以上两种方法都可以称为是算法,紧接着,就两种学生的回答,给出下列问题.
变式:“写出求1+2+3+4+…+100的一个算法”,比较它们的优劣:
算法1按照逐一相加的程序进行
第一步 计算1+2,得到3;
第二步 将第一步中的运算结果3与3相加,得到6;
第三步 将第二步中的运算结果6与4相加,得到10;
第九十九步 将第九十八步中的运算结果4950与100相加,得到5050.
算法2可以运用公式1+2+3+…+n=直接计算
第一步 取=100;
第二步 计算;
第三步 输出运算结果.
本章主要讨论的是计算机能实现的算法.怎样的算法才是计算机能实现的算法?这样,让学生在原有认知基础上很流畅地构建新知——算法的概念.
【小结】算法(algorithm)的含义:对一类问题的机械的、统一的求解方法.
例2:给出求解方程组 的一个算法.
【解】用消元法求解这个方程组,算法如下:
第一步 方程①不动,将方程②中的x的系数除以方程①中的x系数,得到乘数
第二步 方程②减去m乘以方程①,消去方程②中的x项,得到
第三步 将上面的方程组自下而上回代求解,得到y=-1,x=4
所以原方程的解为
【说明】这种消元回代的算法适用于一般的线性方程组的求解.
变式:给出一个解二元一次方程组()的一个算法.
【小结】
1.算法的特点:
①有限性:一个算法在执行有限个步骤后必须结束.
“有限性”往往指在合理的范围之内,如果让计算机执行一个历时1000年才结束的算法,这虽然是有限的,但超过了合理的限度,人们也不把它视作有效算法.“合理限度”一般由人们的常识和需要以及计算机的性能而定.
②确定性:算法的每一个步骤和次序都应该是确定的、明确无误的,不应产生歧义.
例如,一个健身操中一个动作“手举过头顶”,这个步骤就是不确定的、含糊的.是双手都举过头,还是左手或右手?举过头顶多少厘米不同的人可以有不同的理解.算法中的每一个步骤不应产生歧义,而应当是明确无误的.
③有效性:算法从初始步骤开始,分为若干个明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都行之有效,才能完成问题.
④不惟一性:求解某一个问题的方法不一定是惟一的,对于一个问题可以有不同的算法.
2. 算法与解题方法的关系:既有联系,又有区别.它们之间是一般和特殊的关系,也是抽象和具体的关系.算法的获得要借助一般意义上的具体问题的求解方法,而任何一个具体问题都可以利用这类问题的一般算法来解决.
四、课堂反馈,把握特点
【练习】
练习1:写出解方程的一个算法.
【解】算法如下:
第一步 把3移到等号的右边
第二步 用-3除以2得到
练习2:写出求1×3×5×7的一个算法.
【解】按照逐一相乘的程序进行.
第一步 计算1×3,得到3
第二步 将第一步中的运算结果3与5相乘,得到15.
第三步 将第二步中的运算结果15与7相乘,得到105.
练习3:给出求的一个算法.
【解】算法1 按照逐一相加的程序进行
第一步 计算的值
第二步 计算的值
第三步 将第一步中的运算结果与第二步中的运算结果相加
第四步 输出计算结果
算法2 利用公式
第一步 取
第二步 计算
第三步 输出运算结果
练习4:已知平面直角坐标系中的两点,,写出求直线的方程的一个算法.
第一步 计算斜率
第二步 用点斜式写出直线方程
(备用)一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物.没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.请设计过河的算法.
第一步 人带两只狼过河,并自己返回;
第二步 人带一只狼过河,自己返回;
第三步 人带两只羚羊过河,并带两只狼返回;
第四步 人带一只羊过河,自己返回;
第五步 人带两只狼过河.
五、反思小结,延伸思维
【课堂小结】
1.算法的概念:广义地说,为了解决某一问题而采取的方法和步骤,就称之为算法.
例如:歌谱是一首歌曲的算法,空调说明书是空调使用的算法.
我们研究的算法是对一类问题的机械的、统一的求解方法,是计算机可以操作的算法.
2.算法的主要特点:
①有限性:一个算法在执行有限个步骤后必须结束.
②确定性:算法的每一个步骤和次序都应该是确定的、明确无误的,不应产生歧义.
3.算法的主要方式:
自然语言 流程图 伪代码
【课后巩固】
书本P34 1、2、3、4
【教学后记】
5
展开阅读全文