最大公约数和最小公倍数
最大公约数通过递归的方式求解,原理是辗转相除法。
最小公倍数等于两数之积除以最大公约数。
注意递归出口。
public static void main(String[] args) {
int p = 4;
int q = 12;
int res = gcd(p,q);
System.out.println(res);//最大公约数
System.out.println(p*q/res);//最小公倍数
}
//递归思想
public static int gcd(int p, int q){
if(q == 0){
return p;
}else{
return gcd(q,p%q);
}
}
不用写复杂的多层循环了,妙啊。