算法的概念教学设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法的概念教案
人教A版必修3-1.1.1
授课教师:桂鹏华南师范大学附属中学
【教学目标】
(1)初步了解算法的含义和概念,了解算法的概括性、逻辑性、有穷性、不惟一性和普遍性等特征。
(2)初步了解消去法的思想。
(3)体会算法的思想,能说明解决简单问题的算法步骤。
【重点与难点】
教学重点:算法的含义、概念及特征。
教学难点:把自然语言转化为算法语言。
【辅助工具】
投影仪
【教学过程】
一、概念引入
一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物.没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.请设计过河的算法。
解:算法或步骤如下:
S1 人带两只狼过河;
S2 人自己返回;
S3 人带一只羚羊过河;
S4 人带两只狼返回;
S5 人带两只羚羊过河;
S6 人自己返回;
S7 人带两只狼过河;
S8 人自己返回;
S9 人带一只狼过河.
算法(algorithm)一词源于算术(algorism),即算术方法,是指一个由已知推求未知的运算过程。后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。
广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。比如解方程的算法、函数求值的算法、作图的算法,等等。
二、新知探究
处理方式
【问题1】
请同学们解二元一次方程组
x-2y=-1, ① 2x+y=1, ②
求解过程,我们可以归纳出以下步骤: 第一步:②-①×2,得 5y=3; 第二步:解③得y=3/5;
第三步:将y=3/5代入①,得x=1/5; 第四步:得到方程组的解为
从特殊到一半,若上式的数字用字母代替会如何? 【问题2】
对于一般的二元一次方程组 其中a 1b 2-a 2b 1≠0,设计一个算法。
第一步:④×b 2-⑤×b 1,得(a 1b 2-a 2b 1)x=b 2c 1- b 1c 2, ⑥
第二步:解⑥,得
.b 1
2212112b a b a c b c x --=
第三步:,⑤×a1-④×a2,得(a 1b 2-a 2b 1)y=a 1c 2- a 2c 1. ⑦
第四步:解⑦,得
1
2211
221b a b a c a c a y --=.
第五步:得到方程组的解为
通过上面的例子我们可以总结出算法的概念:
总结:这一例子体现算法具有通用性。在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。
在数学中,现代意义的“算法”是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
x=1/5, y=3/5.
.
b 1
2212
112b a b a c b c x --=
1
2211221b a b a c a c a y --=
三、 即时巩固 处理方式
四人小组合作完成,代表回答! 【问题3】
(1) 设计一个算法,判断7是否为质数; (2) 设计一个算法,判断35是否为质数。 【算法分析】
(1) 根据质数的定义,可以这样判断:依次用2~6除7,如果它们中 有一个能整除7,则7不是质数,否则7是质数。 根据以上分析,可定出如下算法:
第一步,用2除7,得到余数1。因为余数不为0,所以2不能整除7。 第二步,用3除7,得到余数1。因为余数不为0,所以3不能整除7。 第三步,用4除7,得到余数3。因为余数不为0,所以4不能整除7。 第四步,用5除7,得到余数2。因为余数不为0,所以5不能整除7。 第五步,用6除7,得到余数1。因为余数不为0,所以6不能整除7。 (2) 类似地,可写出“判断35是否为质数”的算法。
第一步,用2除35,得到余数1。因为余数不为0,所以2不能整除35。 第二步,用3除35,得到余数2。因为余数不为0,所以3不能整除35。 第三步,用4除35,得到余数3。因为余数不为0,所以4不能整除35。 第四步,用5除35,得到余数0。因为余数为0,所以5能整除35。 因此35不是质数。 【问题4】
用二分法设计一个求方程x 2
-2=0的近似根的算法。 【算法分析】 令
()22-=x x f ,则方程022=-x 的解就是函数()x f 的零点。
“二分法”的基本思想是:把函数
()x f 的零点所在的区间[a,b]﹝满足
()()0
<⋅b f a f ﹞“一分为二”,得到[a,m]和[m,b].根据
“
()()0<⋅m f a f ”是否成立,取出零点所在的区间[a,m]或[m,b],仍记为
[a,b]。对所得的区间[a,b]重复上述步骤,直到包含零点的区间[a,b]“足够小”,则[a,b]内的数可以作为方程的近似解。 根据以上分析可以写出如下算法: 第一步,令
()22-=x x f ,给定精确度d.
第二步,确定区间[a,b],满足
()()0<⋅b f a f 。
第三步,取区间中点2
b a m +=.
第四步,若
()()0<⋅m f a f ,则含零点的区间为[a,m];否则,含零点的区
间为[m,b]。将新得到的含零点的区间仍记为[a,b]。 第五步,判断[a,b]的长度是否小于d 或
()m f 是否等于0。若是,则m 是方程的
近似解;否则,返回第三步。
当d=0.005时,按照以上算法,可得到下图和下表。
a
b
︱a-b ︱
1 2 1 1 1.5 0.5 1.25 1.5 0.25 1.375 1.5 0.125 1.375
1.437 5
0.062 5
y=x 2-2
1.25
1.375