算 法 案 例

14
(算 算算 )

Upload: gary-ashley

Post on 03-Jan-2016

73 views

Category:

Documents


0 download

DESCRIPTION

算 法 案 例. ( 第一课时 ). 解: 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 左右首先提 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 算  法  案  例

算 法 案 例

( 第一课时 )

Page 2: 算  法  案  例

解: 2 1 8 2 4 用公有质因数 2 除, 3 9 1 2 用公有质因数 3 除, 3 4 3 和 4 互质不除了。 得: 18 和 24 最大公约数是: 2×3 = 6

想一想,如何求 8251 与 6105 的最大公约数?

例 1 、求 18 与 24 的最大公约数:

短除法

点拨:辗转相除法是解决上述问题的有效方法之一,此算法是欧几

里得在公元前 300 左右首先提 出的,因而,又叫欧几里得 算法.

Page 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 的最大公约数。

Page 4: 算  法  案  例

完整的过程

8251=6105×1+2146

6105=2146×2+1813

2146=1813×1+333

1813=333×5+148

333=148×2+37

148=37×4+0

例 2 用辗转相除法求 319 和 261 的最大公约数

319=261×1+58

261=58×4+29

58=29×2

显然 37 是 148 和 37 的最大公约数,也就是 8251 和6105 的最大公约数

显然 29 是 58 和 261 的最大公约数,也就是 261 和 319 的最大公约数

思考 1 :从上面的两个例子可以看出计算的规律是什么?

S1 :用大数除以小数

S2 :除数变成被除数,余数变成除数

S3 :重复 S1 ,直到余数为0

Page 5: 算  法  案  例

例 3 、下面是求 115 与 276 的最大公约数的程序,把程序补充完整。 ( 学案 T6)

a=115b=276DO r=_____________________ a=b b=rLOOP UNTIL ___________________PRINT aEND

思考:辗转相除直到何时结束?主要运用的是哪种算法结构?

Page 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=rLOOP UNTIL r=0PRINT aEND

Page 7: 算  法  案  例

思考 : 你能用当型循环结构构造算法,求两个正整数的最大公约数吗?

写出程序框图和程序。

Page 8: 算  法  案  例
Page 9: 算  法  案  例

《九章算术 ——》 更相减损术

算理:可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也,以等数约之。

第一步:任意给定两个正整数;判断他们是否都是偶数。若是,则用 2约简;若不是则执行第二步。

第二步:以较大的数减较小的数,接着把所得的差与较小的数比较,并以大数减小数。继续这个操作,直到所得的减数和差相等为止,则这个等数或这个等数与约简的数的乘积就是所求的最大公约数。

Page 10: 算  法  案  例

例 4 、用更相减损术求 120与 75 的最大公约数;

试着写出它的算法框图。(学案 T4 )解:由于 75 不是偶数,把 120 和 75 以大数减小数,并辗转相减。

所以, 120 和 75 的最大公约数等于 15 。

120-75=45

   75-45=30

45-30=15

30-15=15

更相减损是一个反复执行直到减数等于差时停止的步骤,这实际也是一个循环结构

Page 11: 算  法  案  例

程序:INPUT “a,b”;a,bi=0WHILE a MOD 2=0 AND b MOD 2=0 a=a/2 b=b/2 i=i+1 WEND DOIF b>a THENt=aa=bb=tEND IFa=a-bLOOP UNTIL a=bPRINT a*2^iEND

开始

输入: a,b

输出: a×2i

结束

a=b?

a=a/2,b=b/2是

a=a-b

t=a,a=b,b=t

b>a?

a MOD 2=0 且 b MOD 2=0?

i=0

i=i+1

Page 12: 算  法  案  例

知识拓展 问题提出:如何求三个正整数的最大公约数? 分析:可以先求出其中两个数的最大公约数,

用这两个数的最大公约数再与第三个数求最大公约数,所得结果就是这三个数的最大公约数。

例 5 ,求 46 , 115 , 276 的最大公约数 ( 学案T5)

Page 13: 算  法  案  例

辗转相除法与更相减损术的区别:

小 结

( 1 )都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。

( 2 )从结果体现形式来看,辗转相除法体现结果是以相除余数为 0 而得到,而更相减损术则以减数与差相等而得到的。

Page 14: 算  法  案  例