一、辗转相除法与更相减损术
1、辗转相除法。也叫欧几里德算法,用辗转相除法求最大公约数的步骤如下:
(1):用较大的数m除以较小的数n得到一个商
S和一个余数
R;(2):若
R=0,则n为m,n的最大公约数;若
R0,
则用除数n除以余数0
R得到一个商
1
S和一个余数
1
R;(3):若
1
R=0,则
1
R为m,n的最大公约数;若
1
R0,则用除数
R除以余数
1
R得到一个商
2
S和一个余数
2
R; 依次计算直至
n
R=0,此时所得到的
1
nR即为所求的最大公约数。
二、更相减损术
我国早期也有求最大公约数问题的算法,就是更相减损术。在《九章算术》中有更相减损术求最大公约数的'步骤:可半者半之,不可半者,副置分母子之数,以少减多,更相减损,求其等也,以等数约之。
翻译为:
(1):任意给出两个正数;判断它们是否都是偶数。若是,用2约简;若不是,执行第二步。
(2):以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数。继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。
例2 用更相减损术求98与63的最大公约数. 分析:(略)
3、辗转相除法与更相减损术的区别:
(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显。
(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到