【教学目标】:
理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析。
基本能根据算法语句与程序框图的知识设计完整的程序框图并写出算法程序。
【教学重点】理解辗转相除法与更相减损术求最大公约数的方法。
【教学难点】把辗转相除法与更相减损术的方法转换成程序框图与程序语言。
【学法与教学用具】:
学法:比较辗转相除法与更相减损术求最大公约数在算法上的区别,并从程序的学习中体会数学的严谨,领会数学算法计算机处理的结合方式,初步掌握把数学算法转化成计算机语言的一般步骤。
教学用具:计算机,TI-voyage200图形计算器
【教学过程】
提出问题:在小学,我们已经学过求最大公约数的知识,如口算求出12与20的公约数。
分析:
我们都是利用找公约数的方法来求最大公约数,如果公约数比较大而且根据我们的观察又不能得到一些公约数,我们又应该怎样求它们的最大公约数?比如求8251与6105的最大公约数?这就是我们这一堂课所要探讨的内容。
辗转相除法
例1求两个正数8251和6105的最大公约数。
分析:8251与6105两数都比较大,而且没有明显的公约数,可以把它们都变小一点,根据已有的知识即可求出最大公约数
8251=6105×1+2146
显然8251的最大公约数也必是2146的约数,同样6105与2146的公约数也必是8251的约数,所以8251与6105的最大公约数也是6105与2146的最大公约数。
6105=2146×2+1813
2146=1813×1+333
1813=333×5+148
333=148×2+37
148=37×4+0
则37为8251与6105的最大公约数。
以上我们求最大公约数的方法就是辗转相除法。也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的。利用辗转相除法求最大公约数的步骤如下:
(1):用较大的数m除以较小的数n得到一个商和一个余数;
(2):若=0,则n为m,n的最大公约数;若≠0,则用除数n除以余数得到一个商和一个余数;
(3):若=0,则为m,n的最大公约数;若≠0,则用除数除以余数得到一个商和一个余数;……
依次计算直至=0,此时所得到的即为所求的最大公约数。
其程序框图见课本
其程序语言(BASIC)如下:
INpUT “m=”;m
INpUT “n=”;n
IF m MOD n=n
n=x
END IF
r=m MOD n
WHILE r<>0
r=m MOD n
m=n
n=r
WEND
pRINT m
END
学生利用TI-voyage200图形计算器操作:(老师现场指导)
输入不同的m、n都可以算出它们的最大公约数。这下子,学生会感到自己变得神通广大了。利用TI-voyage200图形计算器更能培养学生的动手操作能力,并让他们获得完成程序后的成功感!
更相减损术
我国早期也有解决求最大公约数问题的算法,就是更相减损术。在《九章算术》中记载了更相减损术求最大公约数的步骤:可半者半之,不可半者,副置分母?子之数,以少减多,更相减损,求其等也,以等数约之。
翻译为:
(1):任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。
(2):以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。
例2用更相减损术求98与63的最大公约数.
分析:由于63不是偶数,把98和63以大数减小数,并辗转相减,
即:98-63=35
63-35=28
35-28=7
28-7=21
21-7=14
14-7=7
所以,98与63的最大公约数是7。
学生利用TI-voyage200图形计算器操作:(老师现场指导)
(其中“dashu”指输入数值大的整数,“ xiaoshu”指数值小的整数,学生课余时间可以继续修改)
辗转相除法与更相减损术的区别:
(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。
(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到
小结:
对比分析辗转相除法与更相减损术求最大公约数的计算方法及完整算法程序。
思考:
利用辗转相除法是否可以求两数的最大公倍数?试设计程序框图并转换成程序在图形计算器中实现。
中考 高考名著
常用成语
新学网 Copyright (C) 2007-2018 版权所有 All Rights Reserved. 豫ICP备09006221号