辗转相除法与更相减损术秦九韶算法教案.docx
《辗转相除法与更相减损术秦九韶算法教案.docx》由会员分享,可在线阅读,更多相关《辗转相除法与更相减损术秦九韶算法教案.docx(17页珍藏版)》请在冰豆网上搜索。
辗转相除法与更相减损术秦九韶算法教案
辗转相除法与更相减损术、秦九韶算法
●三维目标
1.知识与技能
(1)理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析.
(2)基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序.
(3)了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质.
2.过程与方法
(1)在辗转相除法与更相减损术求最大公约数的学习过程中对比我们常见的约分求公因式的方法,比较它们在算法上的区别,并从程序的学习中体会数学的严谨,领会数学算法计算机处理的结合方式,初步掌握把数学算法转化成计算机语言的一般步骤.
(2)模仿秦九韶算法,体会古人计算构思的巧妙.
(3)通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化历史的悠久.通过对排序法的学习,领会数学计算与计算机计算的区别,充分认识信息技术对数学的促进.
3.情感、态度与价值观
(1)通过阅读中国古代数学中的算法案例,体会中国古代数学对世界数学发展的贡献.
(2)在学习古代数学家解决数学问题的方法的过程中培养严谨的逻辑思维能力,在利用算法解决数学问题的过程中培养理性的精神和动手实践的能力.
●重点难点
重点:
理解辗转相除法与更相减损术求最大公约数的方法及秦九韶算法的特点.
难点:
把辗转相除法与更相减损术的方法转换成程序框图与程序语言.
●教学建议
在学生学习了算法的初步知识,理解了表示算法的算法步骤、程序框图和程序三种不同方式以后,再结合典型算法案例,让学生经历设计算法解决问题的全过程,体验算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力.
建议充分发挥学生的主体作用和教师的主导作用,采用启发式,并遵循循序渐进的教学原则.这有利于学生掌握从现象到本质,从已知到未知逐步形成概念的学习方法,有利于发展学生抽象思维能力和逻辑推理能力.
以问题为载体,让学生经历知识的形成过程和发展过程,从而突出教学重点,通过各种教学媒体(计算机)调动学生参与课堂教学的主动性与积极性,增加课堂容量,有利于学生活动的充分展开.
学生在课堂上要多观察、讨论、思考、分析、动手操作、自主探索、合作学习多种形式相结合,教师要引导学生多角度、多层面认识事物,突破教学难点.
●教学流程
⇒
⇒通过引导学生回答所提问题,引入用辗转相除及更相减损术最大公约数的方法⇒
⇒
⇒通过例3及变式训练使学生对秦九韶算法有了一定认识并学会其应用⇒归纳整理,进行课堂小结,整体把握本节知识⇒完成当堂双基达标,巩固所掌握的知识,并进行反馈矫正
课标解读
1.通过案例,进一步体会算法的思想.
2.理解辗转相除法、更相减损术、秦九韶算法的原理.(重点)
3.三种算法的框图及程序应用.(难点)
辗转相除法
【问题导思】
1.36与60的最大公约数是多少?
你是如何得到的?
【提示】 先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来即为最大公约数.由于
,故36与60的最大公约数为2×2×3=12.
2.观察下列等式8251=6105×1+2146,那么8251与6105这两个数的公约数和6105与2146的公约数有什么关系?
【提示】 8251的最大约数是2146的约数,同样6105与2146的公约数也是8251的约数,故8251与6105的最大公约数也是6105与2146的最大公约数.
辗转相除法的算法步骤
第一步,给定两个正整数m、n.
第二步,计算m除以n所得的余数r.
第三步,m=n,n=r.
第四步,若r=0,则m、n的最大公约数等于m,否则返回第二步.
更相减损术
【问题导思】
设两个正整数m>n(m>n),若m-n=k,则m与n的最大公约数和n与k的最大公约数相等,反复利用这个原理,可求得98与63的最大公约数是多少?
【提示】 98-63=35,63-35=28,35-28=7,28-7=21,21-7=14,14-7=7,∴98与63的最大公约数为7.
更相减损术的算法步骤
第一步,任意给定两个正整数,判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.
第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数.继续这个操作,直到所得的差与减数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数.
秦九韶算法
将f(x)改写成如下形式:
f(x)=(…((anx+an-1)x+an-2)x+…+a1)x+a0.
具体算法如下:
(1)计算最内层括号内一次多项式的值,即v1=anx+an-1.
(2)由内向外逐层计算多项式的值,即
v2=v1x+an-2,
v3=v2x+an-3,
…
vn=vn-1x+a0.
用辗转相除法求最大公约数
用辗转相除法求228与1995的最大公约数.
【思路探究】 使用辗转相除法可根据m=nq+r,反复相除直到r=0为止.
【自主解答】 1995=8×228+171,
228=1×171+57,
171=3×57,
∴228与1995的最大公约数为57.
利用辗转相除法求给定的两个数的最大公约数,即利用带余除法,用数对中较大的数除以较小的数,若余数不为零,则将余数和较小的数构成新的数对,再利用带余除法,直到大数被小数除尽,则这时的较小数就是原来两个数的最大公约数.
用辗转相除法求779和209的最大公约数.
【解】 ∵779=209×3+152,
209=152×1+57,
152=57×2+38,
57=38×1+19,
38=19×2,
∴779与209的最大公约数为19.
用更相减损术求最大公约数
(2013·福州高一检测)用更相减损术求154,484的最大公约数.
【思路探究】 解答本题可先将两数约简然后按更相减损术的步骤反复相减直至得出结果.
【自主解答】 154÷2=77,484÷2=242,下面用更相减损术,求77与242的最大公约数.
242-77=165,165-77=88,88-77=11,77-11=66,66-11=55,55-11=44,44-11=33,33-11=22,22-11=11,
故77与242的最大公约数为11,则154与484的最大公约数为11×2=22.
更相减损术的步骤:
1.判断两数是否为偶数,若是,则都除以2直到所得的两数不全为偶数;
2.用较大的数减去较小的数,将差和较小的数构成一对新数继续用较大的数减去较小数,重复执行;
3.当差和较小数相等时,结束执行,此时差(或较小数)为不全为偶数的两数的最大公约数.
注意:
原先两数的最大公约数是两式相减所得公约数与约简的因数的乘积.
用更相减损术求576与246的最大公约数.
【解】 用2约简576和246得288与123.
288-123=165,165-123=42,
123-42=81,81-42=39,
42-39=3,39-3=36,36-3=33,
33-3=30,30-3=27,
27-3=24,24-3=21,
21-3=18,18-3=15,
15-3=12,12-3=9,
9-3=6,6-3=3.
∴576与246的最大公约数为3×2=6.
秦九韶算法的应用
用秦九韶算法求多项式f(x)=7x7-6x6+4x4+3x3-2x2+x-5,当x=3时的值.
【思路探究】 解答本题首先要将原多项式化成
f(x)=((((((7x-6)x+0)x+4)x+3)x-2)x+1)x-5的形式.其次再弄清v0,v1,v2,…,v7分别是多少,最后进行计算.
【自主解答】 f(x)=((((((7x-6)x+0)x+4)x+3)x-2)x+1)x-5,
v0=7,v1=7×3-6=15;v2=15×3+0=45;v3=45×3+4=139;v4=139×3+3=420;v5=420×3-2=1258;v6=1258×3+1=3775;v7=3775×3-5=11320.
∴当x=3时,多项式的值为11320.
秦九韶算法的步骤:
用秦九韶算法计算多项式
f(x)=x6-12x5+60x4-160x3+240x2-192x+64,当x=2时的值.
【解】 将f(x)改写为
f(x)=(((((x-12)x+60)x-160)x+240)x-192)x+64,
由内向外依次计算一次多项式当x=2时的值,
v0=1,
v1=1×2-12=-10,
v2=-10×2+60=40,
v3=40×2-160=-80,
v4=-80×2+240=80,
v5=80×2-192=-32,
v6=-32×2+64=0.
∴f
(2)=0,即x=2时,原多项式的值为0.
(见学生用书第24页)
对秦九韶算法中的运算次数理解错误
已知f(x)=x5+2x4+3x3+4x2+5x+6,用秦九韶算法求这个多项式当x=2时的值时,做了几次乘法?
几次加法?
【错解】 根据秦九韶算法,把多项式改写成如下形式f(x)=((((x+2)x+3)x+4)x+5)x+6.
按照从内到外的顺序,依次计算一次多项式当x=2时的值:
v1=2+2=4;v2=2v1+3=11;v3=2v2+4=26;v4=2v3+5=57;v5=2v4+6=120.
显然,在v1中未做乘法,只做了1次加法;在v2,v3,v4,v5中各做了1次加法,1次乘法.因此,共做了4次乘法,5次加法.
【错因分析】 在v1中虽然“v1=2+2=4”,而计算机还是做了1次乘法“v1=2×1+2=4”.因为用秦九韶算法计算多项式f(x)=anxn+an-1xn-1+…+a1x+a0当x=x0时的值时,首先将多项式改写成f(x)=(…(anx+an-1)x+…+a1)x+a0,然后再计算v1=anx+an-1,v2=v1x+an-2,v3=v2x+an-3,…,vn=vn-1x+a0.无论an是不是1,这次的乘法都是要进行的.
【防范措施】 1.将多项式写成一次多项式的形式时,如果多项式中n次项不存在,可将n次项看作0·xn.
2.直接法乘法运算的次数最多可达
,加法最多n次,秦九韶算法通过转化把乘法运算的次数减少到最多n次,加法最多n次.
【正解】 由以上分析,共做了5次乘法,5次加法.
1.辗转相除法与更相减损术都是求两数最大公约数的方法.
辗转相除法计算次数少,步骤简捷,更相减损术计算次数多,步骤复杂,但是更相减损术每一步的计算都是减法,比做除法运算要简单一些,一般当数较小时可以考虑用更相减损术,当数较大时可以考虑用辗转相除法.
2.用秦九韶算法可大大降低乘法的运算次数,提高了运算速度.用此方法求值,关键是正确地将所给多项式改写,然后由内向外计算,由于后项计算需用到前项结果,故应认真、细心,确保结果的准确性.
(见学生用书第24页)
1.490和910的最大公约数为( )
A.2 B.10 C.30 D.70
【解析】 910=490×1+420,490=420×1+70,420=70×6,故最大公约数为70.
【答案】 D
2.用更相减损术求294和84的最大公约数为( )
A.21B.42C.32D.16
【解析】 294÷2=147,84÷2=42,147-42=105,105-42=63,63-42=21,42-21=21,21×2=42,所以最大公约数为42.
【答案】 B
3.用秦九韶算法求f(x)=2x3+x-3当x=3时的值v2=________.
【解析】 f(x)=((2x+0)x+1)x-3,
v0=2;
v1=2×3+0=6;
v2=6×3+1=19.
【答案】 19
4.用更相减损术求288与153的最大公约数.
【解】 288-153=135,153-135=18,135-18=117,117-18=99,99-18=81,81-18=63,63-18=45,45-18=27,27-18=9,18-9=9.
∴288与153的最大公约数为9.
(见学生用书第93页)
一、选择题
1.用“辗转相除法”求得360和504的最大公约数是( )
A.72 B.36 C.24 D.2520
【解析】 ∵504=360×1+144,360=144×2+72,144=72×2,∴360和504的最大公约数是72,故选A.
【答案】 A
2.设计程序框图,用秦九韶算法求多项式的值,主要用哪种结构实现( )
A.顺序结构B.条件结构
C.循环结构D.条件、顺序结构
【解析】 该种算法主要是由内到外计算
故在求值时用到循环结构.
【答案】 C
3.(2013·德州高一检测)用秦九韶算法求多项式f(x)=4x5-x2+2当x=3时的值时,需要进行的乘法运算和加法运算的次数分别为( )
A.4,2B.5,3C.5,2D.6,2
【解析】 f(x)=4x5-x2+2=((((4x)x)x-1)x)x+2,需5次乘法运算和2次加法运算.
【答案】 C
4.225与135的最大公约数是( )
A.5B.9C.15D.45
【解析】 ∵225=135×1+90,135=90×1+45,90=45×2,∴45是225与135的最大公约数.
【答案】 D
5.已知f(x)=x5+2x3+3x2+x+1,应用秦九韶算法计算x=3时的值时,v3的值为( )
A.27B.11C.109D.36
【解析】 f(x)=((((x+0)x+2)x+3)x+1)x+1
当x=3时,v0=1,v1=3,v2=3×3+2=11,v3=11×3+3=36.
【答案】 D
二、填空题
6.464与272的最大公约数为________.
【解析】 464÷16=29,272÷16=17,29-17=12,17-12=5,12-5=7,7-5=2,5-2=3,3-2=1,2-1=1,∴最大公约数为1×16=16.
【答案】 16
7.用更相减损术求152与92的最大公约数时,需要做减法的次数是________.
【解析】 ∵152与92都是偶数,∴先两次用2约简得38与23,又38-23=15,
23-15=8,
15-8=7,
8-7=1,
7-1=6,
6-1=5,
5-1=4,
4-1=3,
3-1=2,
2-1=1,
故要用10次减法.
【答案】 10
8.已知多项式函数f(x)=2x5-5x4-4x3+3x2-6x+7,当x=5时由秦九韶算法v0=2,v1=2×5-5=5,则v3=________.
【解析】 ∵v2=v1x-4=5×5-4=21,
v3=v2x+3=21×5+3=108.
【答案】 108
三、解答题
9.用秦九韶算法求多项式f(x)=x6-5x5+6x4+x2+0.3x+2,当x=-2时的值.
【解】 ∵f(x)=x6-5x5+6x4+x2+0.3x+2
=(((((x-5)x+6)x+0)x+1)x+0.3)x+2.
∴当x=-2时
v0=1,
v1=1×(-2)-5=-7,
v2=-7×(-2)+6=20,
v3=20×(-2)+0=-40,
v4=-40×(-2)+1=81,
v5=81×(-2)+0.3=-161.7,
v6=-161.7×(-2)+2=325.4,
∴f(-2)=325.4.
10.求三个数324,243,135的最大公约数.
【解】 法一 324=243×1+81,
243=81×3.
∴324与243的最大公约数为81.
又135=81×1+54,
81=54×1+27,
54=27×2.
则81与135的最大公约数为27.
∴三个数324,243,135的最大公约数为27.
法二 324-243=81,243-81=162,162-81=81.
∴324与243的最大公约数为81.
135-81=54,81-54=27,54-27=27.
∴81与135的最大公约数为27.
∴324,243,135的最大公约数是27.
11.求1356和2400的最小公倍数.
【解】 2400=1×1356+1044,1356=1×1044+312,
1044=3×312+108,312=2×108+96,
108=1×96+12,96=12×8,
∴1356和2400的最大公约数为12.
∴1356和2400的最小公倍数为(2400×1356)÷12=271200.
(教师用书独具)
1.辗转相除法与更相减损术的区别和联系
名称
辗转相除法
更相减损术
区别
①以除法为主.
②两个整数差值较大时运算次数较少.
③相除余数为零时得结果.
①以减法为主.
②两个整数的差值较大时,运算次数较多.
③相减,两数相等得结果.
④相减前要做是否都是偶数的判断.
联系
①都是求两个正整数的最大公约数的方法.
②二者的实质都是递推的过程.
③二者都要用循环结构来实现.
2.辗转相除法的程序框图及程序表示
程序框图:
程序:
INPUT m,n
DO
r=mMODn
m=n
n=r
LOOP UNTIL r=0
PRINT m
END