1 / 14

算 法 案 例

算 法 案 例. ( 第一课时 ). 解: 2 1 8 2 4 用公有质因数 2 除, 3 9 1 2 用公有质因数 3 除, 3 4 3和4互质不除了。 得:18 和 24 最大公约数是: 2 × 3 = 6. 例 1 、求18与24的最大公约数:. 短除法. 想一想 , 如何求 8251 与 6105 的最大公约数?. 点拨: 辗转相除法 是解决上述问题的有效方法之一,此算法是欧几 里得在公元前 300 左右首先提

gary-ashley
Download Presentation

算 法 案 例

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 算 法 案 例 (第一课时)

  2. 解:2 1 8 2 4 用公有质因数2除, 3 9 1 2 用公有质因数3除, 3 4 3和4互质不除了。 得:18和24最大公约数是:2×3=6 例1、求18与24的最大公约数: 短除法 想一想,如何求8251与6105的最大公约数? 点拨:辗转相除法是解决上述问题的有效方法之一,此算法是欧几 里得在公元前300左右首先提 出的,因而,又叫欧几里得 算法.

  3. 辗转相除法(欧几里得算法) 观察用辗转相除法求8251和6105的最大公约数的过程 第一步 用两数中较大的数除以较小的数,求得商和余数8251=6105×1+2146 结论: 8251和6105的公约数就是6105和2146的公约数,求8251和6105的最大公约数,只要求出6105和2146的公约数就可以了。 为什么呢? 第二步 对6105和2146重复第一步的做法6105=2146×2+1813同理6105和2146的最大公约数也是2146和1813的最大公约数。 思考:从上述的过程你体会到了什么?

  4. 完整的过程 例2 用辗转相除法求319和261的最大公约数 8251=6105×1+2146 319=261×1+58 6105=2146×2+1813 261=58×4+29 2146=1813×1+333 58=29×2 显然29是58和261的最大公约数,也就是261和319的最大公约数 1813=333×5+148 思考1:从上面的两个例子可以看出计算的规律是什么? 333=148×2+37 148=37×4+0 S1:用大数除以小数 显然37是148和37的最大公约数,也就是8251和6105的最大公约数 S2:除数变成被除数,余数变成除数 S3:重复S1,直到余数为0

  5. 例3、下面是求115与276的最大公约数的程序,把程序补充完整。 (学案T6) a=115 b=276 DO r=_____________________ a=b b=r LOOP UNTIL ___________________ PRINT a END 思考:辗转相除直到何时结束?主要运用的是哪种算法结构?

  6. 程序: 程序框图: 开始 输入a,b r=a mod b a=b b = r 否 r=0 是 输出a 结束 INPUT “a,b”;a,b DO r=a mod b a=b b=r LOOP UNTIL r=0 PRINT a END

  7. 思考:你能用当型循环结构构造算法,求两个正整数的最大公约数吗?写出程序框图和程序。思考:你能用当型循环结构构造算法,求两个正整数的最大公约数吗?写出程序框图和程序。

  8. 算法案例

  9. 《九章算术》——更相减损术 算理:可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也,以等数约之。 第一步:任意给定两个正整数;判断他们是否都是偶数。若是,则用2约简;若不是则执行第二步。 第二步:以较大的数减较小的数,接着把所得的差与较小的数比较,并以大数减小数。继续这个操作,直到所得的减数和差相等为止,则这个等数或这个等数与约简的数的乘积就是所求的最大公约数。

  10. 例4、用更相减损术求120与75的最大公约数; 试着写出它的算法框图。(学案T4) 解:由于75不是偶数,把120和75以大数减小数,并辗转相减。 120-75=45 75-45=30 45-30=15 30-15=15 所以,120和75的最大公约数等于15。 更相减损是一个反复执行直到减数等于差时停止的步骤, 这实际也是一个循环结构

  11. 开始 输入:a,b i=0 i=i+1 是 a MOD 2=0且b MOD 2=0? a=a/2,b=b/2 否 b>a? 否 是 t=a,a=b,b=t a=a-b 否 a=b? 是 输出:a×2i 结束 程序: INPUT “a,b”;a,b i=0 WHILE a MOD 2=0 AND b MOD 2=0 a=a/2 b=b/2 i=i+1 WEND DO IF b>a THEN t=a a=b b=t END IF a=a-b LOOP UNTIL a=b PRINT a*2^i END

  12. 知识拓展 • 问题提出:如何求三个正整数的最大公约数? • 分析:可以先求出其中两个数的最大公约数,用这两个数的最大公约数再与第三个数求最大公约数,所得结果就是这三个数的最大公约数。 例5,求46,115,276的最大公约数(学案T5)

  13. 小 结 辗转相除法与更相减损术的区别: (1)都是求最大公约数的方法,计算上辗转相除法以除法 为主,更相减损术以减法为主,计算次数上辗转相除法计算 次数相对较少,特别当两个数字大小区别较大时计算次数的 区别较明显。 (2)从结果体现形式来看,辗转相除法体现结果是以相除 余数为0而得到,而更相减损术则以减数与差相等而得到的。

  14. 再见

More Related