最大公约数,指两个或多个整数共有约数中最大的一个。
算法:两个数x和y,若x是y的倍数,则y为最大公倍数。若不是,则y比x大,利用辗转相除法递归调用
int gcd(int x,int y){
int temp;
if(x<y){
temp = x;
x = y;
y = temp;
}
if(x%y==0){
return y;
}
else{
return gcd(y,x%y); //递归调用
}
}
最小公倍数,可用两个数的乘积除以两个数的最大公倍数
int lcm(int x,int y){
return x*y/gcd(x,y);
}