最大公约数的三种方法
第一种 也是最推荐的一种
int GCD(int a,int b)
{
return a%b?GCD(b,a%b):b;
}
第二种方法
int GCD(int a,int b)
{
if(a%b==0) return b;
//如果a%b==0 代表可以被整除,那么b就是最大公约数
else return GCD(b,a%b)
// 如果不能被整除,那么就先取余数,代码会保证左侧是大的,右侧是小的数字,所以使用时不必进行大小检查,即使a<b也会再一次递归后变成b,a在进行计算。
}
第三种(不推荐)
int gcd(int a,int b)
{
int temp;
while(b)
{
/*利用辗除法,直到b为0为止*/
temp = b;
b = a % b;
a = temp;
}
return a;
}