辗转相除法

来源:互联网 发布:win7如何建立网络连接 编辑:程序博客网 时间:2024/05/22 00:46

辗转相除法, 又名欧几里德算法(Euclidean algorithm)乃求两个正整数之最大公因子的算法。

原理:

若 r 是 a ÷ b 的余数,则

gcd(a,b) = gcd(b,r)

求两个数的最大公约数的代码:

int fun(int m,int n){    if (m%n==0)return n;    else if (m>n)return fun(n,m%n);    else return fun(n,m);}


0 0