1、111 算法的概念教案重点、难点:重点:算法的含义,解二元一次方程组、判断一个数为质数和利用“二分法”求方程近似解的算法设计.难点:把自然语言转化为算法语言.x-2y=-1 回顾: 写出解二元一次方程组 2x+y=1 的算法.解:第一步,2+,得 5x=1;第二步,解,得 x= ;51第三步,-2 得 5y=3;第四步,解 ,得 y= ; 53第五步,得到方程组的解为 x= ;1y= 。53思考 1:你能写出求解一般的二元一次方程组的步骤吗?上题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法.对于一般的二元一次方程组 可以写出类似的求)0(212211 abcybxa解步
2、骤:第一步,b2-b1,得 ;12121第二步,解,得 .121bacx第三步,a1-a2,得 ;12121cayba第四步,解,得 ;121cy第五步,得到方程组的解为 121bacx121y思考 2:根据上述分析,用加减消元法解二元一次方程组,可以分为五个步骤进行,这五个步骤就构成了解二元一次方程组的一个“算法”.我们再根据这一算法编制计算机程序,就可以让计算机来解二元一次方程组.那么解二元一次方程组的算法包括哪些内容?思考 3:一般地,算法是由按照一定规则解决某一类问题的基本步骤组成的.你认为:(1)这些步骤的个数是有限的还是无限的?(2)每个步骤是否有明确的计算任务?总结:在数学中,按
3、照一定规则解决某一类问题的明确和有限的步骤称为算法. 算法(algorithm)一词出现于 12 世纪,源于算术(algorism),即算术方法.指的是用阿拉伯数字进行算术运算的过程.在数学中,算法通常是指按照一定的规则解决某一类问题的明确的和有限的步骤.现在,算法通常可以编成计算机程序,让计算机执行并解决问题.后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法.广义地说,算法就是做某一件事的步骤或程序.菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法.在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序.比如解方
4、程的算法、函数求值的算法、作图的算法,等等.(三)例题剖析,巩固提高例 1:如果让计算机判断 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 是质数.练习 1:如果让计算机判断 35 是否为质数,如何设计算法步骤? 练习 2:整数 89 是否为质数?如果让计算机判断 89 是否为
5、质数,按照上述算法需要设计多少个步骤? 思考 4:用 288 逐一去除 89 求余数,需要 87 个步骤,这些步骤基本是重复操作,我们可以按下面的思路改进这个算法,减少算法的步骤.(1)用 i 表示 288 中的任意一个整数,并从 2 开始取数;(2)用 i 除 89,得到余数 r. 若 r=0,则 89 不是质数;若 r0,将 i 用 i+1 替代,再执行同样的操作; (3)这个操作一直进行到 i 取 88 为止.你能按照这个思路,设计一个“判断 89 是否为质数”的算法步骤吗?算法设计:第一步,令 i=2; 第二步,用 i 除 89,得到余数 r; 第三步,若 r=0,则 89 不是质数,
6、结束算法;若 r0,将 i 用 i+1 替代; 第四步,判断“i88”是否成立?若是,则 89 是质数,结束算法;否则,返回第二步. 探究:一般地,判断一个大于 2 的整数是否为质数的算法步骤如何设计? 在中央电视台幸运 52 节目中,有一个猜商品价格的环节,竟猜者如在规定的时间内大体猜出某种商品的价格,就可获得该件商品.现有一商品,价格在 08000 元之间,采取怎样的策略才能在较短的时间内说出比较接近的答案呢?二分法:对于区间a,b 上连续不断,且 f(a)f(b)0 的函数 y=f(x),通过不断地把函数 f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,而得到零点近似值的
7、方法叫做二分法.例 2:写出用“二分法”求方程 的近似解的算法. 02x算法分析:令 f(x)= ,则方程 的解就是函数 f(x)的零点. 2x2x第一步,令 f(x)= ,给定精确度 d. 2第二步,确定区间a,b,满足 f(a)f(b)0. 第三步,取区间中点 .2bam第四步,若 f(a)f(m)0,则含零点的区间为a,m,否则,含零点的区间为m,b. 将新得到的含零点的区间仍记为a,b;第五步,判断a,b的长度是否小于 d 或 f(m)是否等于 0.若是,则 m 是方程的近似解;否则,返回第三步.对于方程 ,当 d=0.005,按照以上算法,可以得到下表.02xa b |a-b|1 2
8、 11 1.5 0.51.25 1.5 0.251.375 1.5 0.1251.375 1.437 5 0.062 51.406 25 1.437 5 0.031 251.406 25 1.421 875 0.015 6251.414 062 5 1.421 875 0.007 812 51.414 062 5 1.417 968 75 0.003 906 25(四)小结计算机解决任何问题都要依赖算法,算法是建立在解法基础上的操作过程,算法不一定要有运算结果设计一个解决某类问题的算法的核心内容是将解决问题的过程分解为若干个明确的步骤,即算法,它没有一个固定的模式,但有以下几个基本要求: (1)符合运算规则,计算机能操作;(2)每个步骤都有一个明确的计算任务;(3)对重复操作步骤作返回处理;(4)步骤个数尽可能少;(5)每个步骤的语言描述要准确、简明.(五)布置作业P5 练习:1,2.