高中数学必修三示范教案(--算法案例)公开课教案课件课时训练练习教案课件.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《高中数学必修三示范教案(--算法案例)公开课教案课件课时训练练习教案课件.doc》由会员分享,可在线阅读,更多相关《高中数学必修三示范教案(--算法案例)公开课教案课件课时训练练习教案课件.doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.3 算法案例整体设计教学分析 在学生学习了算法的初步知识,理解了表示算法的算法步骤、程序框图和程序三种不同方式以后,再结合典型算法案例,让学生经历设计算法解决问题的全过程,体验算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.三维目标1理解算法案例的算法步骤和程序框图.2引导学生得出自己设计的算法程序.3. 体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.重点难点教学重点:引导学生得出自己设计的算法步骤、程序框图和算法程序.教学难点:体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.课时安排 3课时教
2、学过程第1课时 案例1 辗转相除法与更相减损术导入新课 思路1(情境导入) 大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正整数的最大公约数的方法:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来. 当两个数公有的质因数较大时(如8 251与6 105),使用上述方法求最大公约数就比较困难.下面我们介绍两种不同的算法辗转相除法与更相减损术,由此可以体会东、西方文化的差异. 思路2(直接导入) 前面我们学习了算法步骤、程序框图和算法语
3、句.今天我们将通过辗转相除法与更相减损术来进一步体会算法的思想.推进新课新知探究提出问题(1)怎样用短除法求最大公约数?(2)怎样用穷举法(也叫枚举法)求最大公约数?(3)怎样用辗转相除法求最大公约数?(4)怎样用更相减损术求最大公约数?讨论结果:(1)短除法 求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来.(2)穷举法(也叫枚举法) 穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数.(3)辗转相除法 辗转相除法求两个数的最大公约数,其算
4、法步骤可以描述如下: 第一步,给定两个正整数m,n. 第二步,求余数r:计算m除以n,将所得余数存放到变量r中. 第三步,更新被除数和余数:m=n,n=r. 第四步,判断余数r是否为0.若余数为0,则输出结果;否则转向第二步继续循环执行. 如此循环,直到得到结果为止. 这种算法是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法.(4)更相减损术 我国早期也有解决求最大公约数问题的算法,就是更相减损术. 九章算术是中国古代的数学专著,其中的“更相减损术”也可以用来求两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.”翻译为现代
5、语言如下: 第一步,任意给定两个正整数,判断它们是否都是偶数,若是,用2约简;若不是,执行第二步. 第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.应用示例例1 用辗转相除法求8 251与6 105的最大公约数,写出算法分析,画出程序框图,写出算法程序.解:用两数中较大的数除以较小的数,求得商和余数:8 251=6 1051+2 146.由此可得,6 105与2 146的公约数也是8 251与6 105的公约数,反过来,8 251与6 105的公约数也是6 105与2
6、 146的公约数,所以它们的最大公约数相等.对6 105与2 146重复上述步骤:6 105=2 1462+1 813.同理,2 146与1 813的最大公约数也是6 105与2 146的最大公约数.继续重复上述步骤:2 146=1 8131+333,1 813=3335+148,333=1482+37,148=374. 最后的除数37是148和37的最大公约数,也就是8 251与6 105的最大公约数. 这就是辗转相除法.由除法的性质可以知道,对于任意两个正整数,上述除法步骤总可以在有限步之后完成,从而总可以用辗转相除法求出两个正整数的最大公约数.算法分析:从上面的例子可以看出,辗转相除法中
7、包含重复操作的步骤,因此可以用循环结构来构造算法.算法步骤如下:第一步,给定两个正整数m,n.第二步,计算m除以n所得的余数为r.第三步,m=n,n=r.第四步,若r=0,则m,n的最大公约数等于m;否则,返回第二步.程序框图如下图:程序:INPUT m,nDO r=m MOD n m=n n=rLOOP UNTIL r=0PRINT mEND点评:从教学实践看,有些学生不能理解算法中的转化过程,例如:求8 251与6 105的最大公约数,为什么可以转化为求6 105与2 146的公约数.因为8 251=6 1051+2 146,可以化为8 251-6 1051=2 164,所以公约数能够整除
8、等式两边的数,即6 105与2 146的公约数也是8 251与6 105的公约数.变式训练 你能用当型循环结构构造算法,求两个正整数的最大公约数吗?试画出程序框图和程序.解:当型循环结构的程序框图如下图:程序:INPUT m,nr=1WHILE r0 r=m MOD n m=n n=rWENDPRINT mEND例2 用更相减损术求98与63的最大公约数.解:由于63不是偶数,把98和63以大数减小数,并辗转相减,如下图所示.98-63=3563-35=2835-28=728-7=2121-7=1414-7=7所以,98和63的最大公约数等于7.点评:更相减损术与辗转相除法的比较:尽管两种算法
9、分别来源于东、西方古代数学名著,但是二者的算理却是相似的,有异曲同工之妙主要区别在于辗转相除法进行的是除法运算,即辗转相除;而更相减损术进行的是减法运算,即辗转相减,但是实质都是一个不断的递归过程变式训练 用辗转相除法或者更相减损术求三个数324,243,135的最大公约数.解:324=243181,243=8130,则324与243的最大公约数为81.又135=81154,81=54127,54=2720,则 81 与 135的最大公约数为27.所以,三个数324、243、135的最大公约数为27.另法:324243=81,24381=162,16281=81,则324与243的最大公约数为
10、81.13581=54,8154=27,5427=27,则81与135的最大公约数为27.所以,三个数324、243.135的最大公约数为27.例3 (1)用辗转相除法求123和48的最大公约数.(2)用更相减损术求80和36的最大公约数.解:(1)辗转相除法求最大公约数的过程如下:12324827,4812721,271216,21363,623+0,最后6能被3整除,得123和48的最大公约数为3.(2)我们将80作为大数,36作为小数,因为80和36都是偶数,要除公因数2.802=40,362=18.40和18都是偶数,要除公因数2.402=20,182=9.下面来求20与9的最大公约数
11、,209=11,119=2,92=7,72=5,52=3,32=1,21=1,可得80和36的最大公约数为221=4.点评:对比两种方法控制好算法的结束,辗转相除法是到达余数为0,更相减损术是到达减数和差相等.变式训练 分别用辗转相除法和更相减损术求1 734,816的最大公约数解:辗转相除法:1 734=8162+102,816=1028(余0),1 734与816的最大公约数是102更相减损术:因为两数皆为偶数,首先除以2得到867,408,再求867与408的最大公约数867-408=459,459-408=51,408-51=357,357-51=306,306-51=255,255-
12、51=204,204-51=153,153-51=102,102-51=51.1 734与816的最大公约数是512=102利用更相减损术可另解:1 734816918,918816102,816102714,714102612,612102510,510102408,408102306,306102204,204102102.1 734与816的最大公约数是102知能训练 求319,377,116的最大公约数解:377=3191+58,319=585+29,58=292.377与319的最大公约数为29,再求29与116的最大公约数116=294.29与116的最大公约数为29.377,31
13、9,116的最大公约数为29.拓展提升 试写出利用更相减损术求两个正整数的最大公约数的程序解:更相减损术程序:INPUT “m,n=”;m,nWHILE mnIF mn THENm-nELSEm=n-mEND IFWENDPRINT mEND课堂小结(1)用辗转相除法求最大公约数.(2)用更相减损术求最大公约数.思想方法:递归思想.作业 分别用辗转相除法和更相减损术求261,319的最大公约数.分析:本题主要考查辗转相除法和更相减损术及其应用使用辗转相除法可依据m=nq+r,反复执行,直到r=0为止;用更相减损术就是根据m-n=r,反复执行,直到n=r为止解:辗转相除法:319=2611+58
14、,261=584+29,58=292.319与261的最大公约数是29更相减损术:319-261=58,261-58=203,203-58=145,145-58=87,87-58=29,58-29=29,319与261的最大公约数是29设计感想 数学不仅是一门科学,也是一种文化,本节的引入从东、西方文化的不同开始,逐步向学生渗透数学文化.从知识方面主要学习用两种方法求两个正整数的最大公约数,从思想方法方面,主要学习递归思想.本节设置精彩例题,不仅让学生学到知识,而且让学生进一步体会算法的思想,培养学生的爱国主义情操第2课时 案例2 秦九韶算法导入新课 思路1(情境导入) 大家都喜欢吃苹果吧,我
15、们吃苹果都是从外到里一口一口的吃,而虫子却是先钻到苹果里面从里到外一口一口的吃,由此看来处理同一个问题的方法多种多样.怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?方法也是多种多样的,今天我们开始学习秦九韶算法. 思路2(直接导入) 前面我们学习了辗转相除法与更相减损术, 今天我们开始学习秦九韶算法.推进新课新知探究提出问题(1)求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值有哪些方法?比较它们的特点.(2)什么是秦九韶算法?(3)怎样评价一个算法的好坏?讨论结果:(1)怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢? 一个自然的做
16、法就是把5代入多项式f(x),计算各项的值,然后把它们加起来,这时,我们一共做了1+2+3+4=10次乘法运算,5次加法运算. 另一种做法是先计算x2的值,然后依次计算x2x,(x2x)x,(x2x)x)x的值,这样每次都可以利用上一次计算的结果,这时,我们一共做了4次乘法运算,5次加法运算. 第二种做法与第一种做法相比,乘法的运算次数减少了,因而能够提高运算效率,对于计算机来说,做一次乘法运算所用的时间比做一次加法运算要长得多,所以采用第二种做法,计算机能更快地得到结果.(2)上面问题有没有更有效的算法呢?我国南宋时期的数学家秦九韶(约12021261)在他的著作数书九章中提出了下面的算法:
17、 把一个n次多项式f(x)=anxn+an-1xn-1+a1x+a0改写成如下形式:f(x)=anxn+an-1xn-1+a1x+a0=(anxn-1+an-1xn-2+a1)x+ a0=(anxn-2+an-1xn-3+a2)x+a1)x+a0=(anx+an-1)x+an-2)x+a1)x+a0.求多项式的值时,首先计算最内层括号内一次多项式的值,即v1=anx+an-1,然后由内向外逐层计算一次多项式的值,即v2=v1x+an-2,v3=v2x+an-3,vn=vn-1x+a0,这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.上述方法称为秦九韶算法.直到今天,这种算法仍是多项
18、式求值比较先进的算法.(3)计算机的一个很重要的特点就是运算速度快,但即便如此,算法好坏的一个重要标志仍然是运算的次数.如果一个算法从理论上需要超出计算机允许范围内的运算次数,那么这样的算法就只能是一个理论的算法.应用示例例1 已知一个5次多项式为f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8, 用秦九韶算法求这个多项式当x=5时的值.解:根据秦九韶算法,把多项式改写成如下形式:f(x)=((5x+2)x+3.5)x-2.6)x+1.7)x-0.8,按照从内到外的顺序,依次计算一次多项式当x=5时的值:v0=5;v1=55+2=27;v2=275+3.5=138.5;v3=
19、138.55-2.6=689.9;v4=689.95+1.7=3 451.2;v5=3 415.25-0.8=17 255.2;所以,当x=5时,多项式的值等于17 255.2.算法分析:观察上述秦九韶算法中的n个一次式,可见vk的计算要用到vk-1的值,若令v0=an,我们可以得到下面的公式:这是一个在秦九韶算法中反复执行的步骤,因此可用循环结构来实现.算法步骤如下:第一步,输入多项式次数n、最高次的系数an和x的值.第二步,将v的值初始化为an,将i的值初始化为n-1.第三步,输入i次项的系数ai.第四步,v=vx+ai,i=i-1.第五步,判断i是否大于或等于0.若是,则返回第三步;否则
20、,输出多项式的值v.程序框图如下图:程序:INPUT “n=”;nINPUT “an=”;aINPUT “x=”;xv=ai=n-1WHILE i=0 PRINT “i=”;i INPUT “ai=”;a v=v*x+a i=i-1WENDPRINT vEND点评:本题是古老算法与现代计算机语言的完美结合,详尽介绍了思想方法、算法步骤、程序框图和算法语句,是一个典型的算法案例.变式训练 请以5次多项式函数为例说明秦九韶算法,并画出程序框图.解:设f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0首先,让我们以5次多项式一步步地进行改写:f(x)=(a5x4+a4x3+a3x2+a2
21、x+a1)x+a0=(a5x3+a4x2+ a3x+a2)x+a1)x+a0=(a5x2+a4x+ a3)x+a2)x+a1)x+a0=(a5x+a4)x+ a3)x+a2)x+a1)x+a0.上面的分层计算,只用了小括号,计算时,首先计算最内层的括号,然后由里向外逐层计算,直到最外层的括号,然后加上常数项即可.程序框图如下图:例2 已知n次多项式Pn(x)=a0xn+a1xn-1+an-1x+an,如果在一种算法中,计算(k=2,3,4,n)的值需要k1次乘法,计算P3(x0)的值共需要9次运算(6次乘法,3次加法),那么计算P10(x0)的值共需要_次运算.下面给出一种减少运算次数的算法:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高中数学 必修 示范 教案 算法 案例 公开 课件 课时 训练 练习
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内