求最小公倍数和最大公约数

1、分解素因数法:把每个数分别分解素因数,再把各数中的全部公有素因数提取出来连乘,所得的积就是这几个数的最大公约数;先把这几个数的质因数写出来,最小公倍数等于它们所有的质因数的乘积;

2、短除法:短除法求最大公约数,先用这几个数的公约数连续去除,一直除到所有的商互质为止,然后把所有的除数连乘起来,所得的积就是这几个数的最大公约数;

把数字依次相乘,最小公倍数等于它们所有因数的乘积;

public class LeastCommonMultiple {
// 定义两个数
private int max;
private int min;

// 构造函数
public LeastCommonMultiple(int max, int min) {
super();
this.max = max;
this.min = min;
}

// 求最大公约数
public int Gcd(int min, int max) {
int temp = 0;
int k = 0;
if (max < min) {
temp = min;
min = max;
max = temp;
}
while (max % min != 0) {
k = max % min;
max = min;
min = k;
}
return min;
}

// 求最小公倍数
public int Lcm(int min, int max) {
return min * max / Gcd(min, max);
}

}

posted @ 2017-12-09 15:31  fengfan-boke  阅读(880)  评论(0编辑  收藏  举报