最大公约数指某几个整数共有因子中最大的一个。
关于最大公约数的算法有很多,我就写出目前我所知道的算法吧~
int gcd(int a,int b)
{
while(a!=b)
{
if(a>b)
a-=b;
else
b-=a;
}
return a;
}
/*
可用数学归纳法证明
*/
辗转相除法(欧几里德算法)
int gcd(int a,int b)
{
if(b==0)
return a;
return gcd(b,a%b);
}//用递归做
int gcd(int a,int b)
{
int c;
while(b)
{
c=a%b;
a=b;
b=c;
}
return a;
}//用循环做