标题: 最大公约数和最小公倍数-----更相减损之术 [打印本页] 作者: 齐天大圣 时间: 2015-7-16 01:08 标题: 最大公约数和最小公倍数-----更相减损之术 public class Test_最大公约数最小公倍数 {
public static void main(String[] args) {
print(5550, 4);
}
private static void print(int m, int n) {
// 最大公约数更相减损之术
int a = m;
int b = n;
for (int x = 0; x < m + n; x++) {
if (a == b) {
System.out.println("最大公约数=" + a);
System.out.println("最小公倍数="+m*n/a);
break;
}
if (a < b) {
int t = a;
a = b;
b = t;
}
int t = b;
a = a - b;
b = t;
}
}
}
作者: 齐天大圣 时间: 2015-7-16 01:12
我倒不讨喜欢崭除法作者: 齐天大圣 时间: 2015-7-16 01:13
// 崭除法
private static void print1(int m, int n) {
if (m == 0 || n == 0) {
System.out.println(-1);
}
if (m == n) {
System.out.println(m);
}
if (m < n) {
int t = m;
m = n;
n = t;
}
while (m != 0) {
// int t = m%n;
int t=n%m;
n = m;
m = t;
}
int yue=n;
System.out.println(yue);
}作者: 齐天大圣 时间: 2015-7-16 01:19
求解3个数的公约数,崭除法好还是更相减损之术好些?