歐幾里得演算法
求兩個數的最大公因數的最有效方法是歐幾里得演算法,這是由直到餘數為零的一系列帶餘除法組成的。在敘述一般方法前,我們用個例子來說明:
我們計算gcd(36,132),第一步是132除以36得商3與餘數24。我們將此記作
132 = 3·36 +24
第二步是取36,用前一步的餘數24除以36得
36 = 1·24 +12
下一步,用12除以24求得餘數0
24 = 2·12 + 0
歐幾里得演算法說明當得到餘數0時,則前一步的餘數就是最初兩個數的最大公因數,所以在這種情況我們求得gcd(132,36)=12
注意如何在每一步用數A除以B得到商Q和餘數R,換句話說,
A = Q·B +R
然後在下一步用數B與R代替原來的 A與B,繼續此過程直到得到餘數0為止。此時,前一步的餘數R就是最初兩個數的最大公因數。
歐幾里得演算法:要計算兩個數a與b的最大公因數,先令r_{-1}=a,r_0=b,然後計算相繼的商和餘數
r_{i-1}=q_{i-1}·r_{i}+r_{i-1}(i = 0,1,2,...)
直到某餘數r_{n+1}為0。最後的非零餘數r_n就是a與b的最大公因數
本作品採用《CC 協議》,轉載必須註明作者和本文連結