假设两个整数m,n的最大公约数为p,则两数的最小公倍数为q=m*n/p。
问题描述:
求两个整数的m,n的最大公约数及最小公倍数?
例:
6 12 的最大公约数为6,最小公倍数为12;
3 2 的最大公约数为1,最小公倍数为6;
解决方案:
//得到最大公约数
int divisor (int m, int n ) {
int r;
for (; r=m%n; m = n, n = r)
;
return n;
}
或者da
int divisor(int m, int n) {
int r;
do {
r = m % n;
m = n;
n = r;
} while (r != 0);
return m;
}
求最小公倍数为m*n/q最小公倍数