130 likes | 305 Views
§1.3 算法案例( 1 ). 兖矿一中 于新岭. 例 1 :求 8251 和 6105 的最大公约数. 解:. 8251=1×6105+2146. 6105=2×2146+1813. 2146=1×1813+333. 1813=5×333+148. 333=2×148+37. 148=4×37+0. ∴8251 和 6105 的最大公约数为 37. 练习:求 80 和 36 的最大公约数. 解 :. 80=2×36+8. 36=4×8+4. 8=2×4+0. ∴ 80 和 36 的最大公约数为 4. 例 1 :求 8251 和 6105 的最大公约数.
E N D
§1.3 算法案例(1) 兖矿一中 于新岭
例1:求8251和6105的最大公约数 解: 8251=1×6105+2146 6105=2×2146+1813 2146=1×1813+333 1813=5×333+148 333=2×148+37 148=4×37+0 ∴8251和6105的最大公约数为37
练习:求80和36的最大公约数 解: 80=2×36+8 36=4×8+4 8=2×4+0 ∴80和36的最大公约数为4
例1:求8251和6105的最大公约数 解: 8251=1×6105+2146 6105=2×2146+1813 2146=1×1813+333 辗转相除法(欧几里得算法) 1813=5×333+148 333=2×148+37 148=4×37+0 ∴8251和6105的最大公约数为37
辗转相除法是一个反复执行直到余数等于0才停止的步骤,这实际上是一个循环结构.辗转相除法是一个反复执行直到余数等于0才停止的步骤,这实际上是一个循环结构. m = q × n + r 程序框图: 8251=1×6105+2146 r=m MOD n 6105=2×2146+1813 m = n 2146=1×1813+333 n = r 1813=5×333+148 r=0? 否 333=2×148+37 是 148=4×37+0
辗转相除除法的程序框图与程序 开始 INPUT “m,n=“; m,n DO r=m MOD n m=n n=r LOOP UNTIL r=0 PRINT m END 输入m,n r =m MOD n m=n n=r 否 r=0? 是 输出m 结束
《九章算术》——更相减损术 算理:可半者半之,不可半者,副置分母、子之数, 以少减多,更相减损,求其等也,以等数约之. 第一步:任意给顶两个正整数;判断他们是否都是 偶数.若是,则用2约简;若不是则执行第二步. 第二步:以较大的数减较小的数,接着把所得的差 与较小的数比较,并以大数减小数.继续这个操 作,直到所得的减数和差相等为止,则这个等数就 是所求的最大公约数.
《九章算术》是中国古代数学专著,是算经十书中《九章算术》是中国古代数学专著,是算经十书中 最重要的一种。该书内容十分丰富,系统总结了 战国、秦、汉时期的数学成就。同时,《九章算术》 在数学上还有其独到的成就,不仅最早提到分数问题, 也首先记录了盈不足等问题,“方程”章还在世界数学史 上首次阐述了负数及其加减运算法则。该书经多次增补, 成书时间已不可考,但据估算最迟在公元一世纪已有了 现传本。 许多人曾为它作过注释,其中不乏历史上的 数学名人,最著名的有刘徽(公元263年)、李淳风 (公元656年)........要注意的是《九章算术》没有作者, 它是一本综合性的历史著作,是当时世界上最先进的 应用数学。 它的出现标志中国古代数学形成了完整的体系。
例2: 用更相减损术求98与63的最大公约数 解:把98和63以大数减小数,并辗转相减得 98-63=35 63-35=28 35-28=7 28- 7 =21 21- 7 =14 14- 7 =7 所以,98和63的最大公约数等于7.
练习:用更相减损术求80和36的最大公约数 解: 80=2×36+8 80-36=44 44-36= 8 36=4×8+4 36 - 8=28 28 - 8=20 20 - 8=12 12 - 8= 4 8=2×4+0 8 - 4= 4 4 - 4= 0 ∴80和36的最大公约数为4
开始 INPUT m,n DO IF m<n THEN t=m m=n n=t End IF d=m-n m=n n=d LOOP UNTIL m=n PRINT m END 输入m,n 是 m<n? t=m m=n 否 n=t d=m-n m=n n=d m=n? 否 是 结束
小结: 辗转相除法与更相减损术的区别: (1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。 (2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到 辗转相除法与更相减损术的联系:…