辗转相除法求最大公约数

辗转相除法是欧几里德提出的。

苏格拉底、柏拉图、亚里士多德是师生,而柏拉图创立了柏拉图学院,欧几里德曾在柏拉图学院学习,而前三位大家都是哲学家,欧几里德是数学家。后来哲学家从欧几里德所著的《几何原本》中获得启发,根据数学使用的推理演绎的方法,进行哲学研究。《几何原本》在最初规定了几条公理,后面的内容都是根据前面的公理推导出来的。

辗转相除法应用于求最大公约数的算法证明过程。

已知:

1、m>n, m ÷ n = a……b
2、gcb表示两个数的最大公约数,c = gcb(m,n),d = gcb(n,b)
证明:c = d

1.
m = k1*c
n = k2*c
b = m-na = (k1-k2*a)c
∴n、b有公约数c
∵d = gcb(n,b)
∴c ≤ d

2.
n = k3*d
b = k4*d
m = na+b = (k3*a+k4)*d
∴m、n有公约数d
∵c = gcb(m,n)
∴d ≤ c

综上:d = c

原文地址:https://www.cnblogs.com/pukaifei/p/5504336.html