§1.1.1 算法的概念
【教学目标】:
(1) 了解算法的含义,体会算法的思想。 (2) 能够用自然语言叙述算法。 (3) 掌握正确的算法应满足的要求。
【过程与方法】:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个求一个一元二次方程解的算法。
【情感态度与价值观】:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的一各有力工具,进一步提高探索、认识世界的能力。
【教学重点】算法的含义和判断一个数为质数的算法设计。.【教学难点】把自然语言转化为算法语言。.【教法】:采用“问题探究与学案相结合”教学法,以多媒体为辅助手段,让学生主动发现问题、分析问题、解决问题,培养学生的探究论证、逻辑思维能力。
【教学过程】
一、本章章头图说明
章头图为我们展示的是古代与近代的计算工具:算筹与算盘.以及20世纪最伟大的发明——计算机,体现了中国古代数学与现代计算机科学的联系,它们的基础都是“算法”。计算机是强大的实现各种算法的工具。那么,计算机是怎样工作的呢?算法的学习是一个开始。
二、引入新课
1、怎样理解算法?
x2y1引例1:解二元一次方程组:
2xy1① ②分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步:②①×a2,得:a1b2a2b1ya1c2a2c
1 ③
第二步:解③得 ya1c2a2c1;
a1b2a2b1
第三步:将ya1c2a2c1bcb1c2代入①,得x21
a1b2a2b1a1b2a2b1评注:1.以上求解的步骤就是解二元一次方程组的算法.2本题的算法是由加减消元法求解的,同样利用代入消元也可达到解方程组的目的,解决一个问题不一定只有一种算法
算法概念: 算法通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。
例如:描述太极拳动作的图解,就是“太极拳的算法”;一首歌的乐谱,可以称之为该歌曲的算法。从小学到高中遇到的算法绝大多数都与“计算”有关的问题。
2.算法的特点: ①有穷性:一个算法的步骤序列是有限的,它应在有限步操作之后停止,而不能是无限地执行下去。
②确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可的。
③逻辑性:算法从初始步骤开始,分为若干个明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题。
④不唯一性:求解某一个问题的算法不一定只有唯一的一个,可以有不同的算法。 ⑤普遍性:很多具体的问题,都可以设计合理的算法去解决。
2、例题讲评:
例
1、设计算法判断任意一个大于2的正整数n是否是质数。
分析:首先考虑判断一个具体的数是否是质数的方法,以7为例。
根据质数的定义,可以这样判断:依次用2~6去除7如果它们中有一个数能整除7,则7不是质数,否则7是质数。
第一步 用2除7,得到余数1,所以2不能整除7
第二步 用3除7,得到余数1,所以3不能整除7
第三步 用4除7,得到余数3,所以4不能整除7
第四步 用5除7,得到余数2,所以5不能整除7
第五步 用6除7,得到余数1,所以6不能整除7,因此,7是质数。
根据以上分析,对于任意大于2的正整数n,判断它是否为质数的算法如下:
第一步:给出大于2的正整数
第二步:令i=2
第三步:用i 除n,得到余数r
第四步: 判断“r=0”是否成立。若是则n 不是质数,结束算法;否则将 i 的值增加1,仍用 i表示
第五步:判断
“i >(n-1)” 是否成立。若是,则n是质数,结束算法;否则,返回第三步。
(设计意图:通过这个例子从特殊到一般的过程,使学生进一步体会到算法概括性,逻辑性,有限性,练习把自然语言转化成规范的算法语言)
例
2、.用二分法设计一个求方程x220的近似根的算法.分析:该算法实质是求2的近似值的一个最基本的方法.解:设精确度为d,初始区间【a,b】且fafb0
2fxx2;
第二步:令m=(a+b)/2 算法:第一步:令
第三步:若fafm0,则b=m;否则,令a=m.
第四步:判断|a-b|
(以a=1,b=2d=0.005为例用多媒体课件演示,这个例子突出体现了算法与其它知识是紧密联系的,可以使学生认识到算法的重要性)
三、小结
1、算法概念和算法的基本思想
(1)算法与一般意义上具体问题的解法的联系与区别;(2)算法的五个特征。
2、两类算法问题
(1)数值性计算问题,如:解方程(或方程组),解不等式(或不等式组),套用公式判断性的问题,累加,累乘等一类问题的算法描述,可通过相应的数学模型借助一般数学计算方法,分解成清晰的步骤,使之条理化即可。
(2)非数值性计算问题,如:排序、查找、变量变换、文字处理等需先建立过程模型,通过模型进行算法设计与描述。
四、作业: 完成学案作业 六
五、板书设计
1.1.1
算法的概念
一问题1
二 概念
例2
问题2
三例1
小结