最大公约数gcd、最小公倍数lcm

最大公约数(辗转相除法)

循环:

 1 int gcd(int a,int b) 
 2 {
 3     int r;
 4     while(a>0)
 5     {
 6         r=b%a;
 7         b=a;
 8         a=r;
 9     }
10     return b;
11 }

递归:

1 int gcd(int a,int b)
2 {
3     return a==0?b:gcd(b%a,a);
4 }

最小公倍数

1 int lcm(int a,int b)
2 {
3     return a*b/gcd(a,b);
4 }
原文地址:https://www.cnblogs.com/Fresh--air/p/8046981.html