最大公约数
100 99 ----1
3 6 ----3
4 5 ----1
两个数字拆分,相同的最大因数
辗转相除法
例如,求(319,377):
∵ 319÷377=0(余319)
∴(319,377)=(377,319);
∵ 377÷319=1(余58)
∴(377,319)=(319,58);
∵ 319÷58=5(余29)
∴ (319,58)=(58,29);
∵ 58÷29=2(余0)
∴ (58,29)= 29;
∴ (319,377)=29。
int gcd(int a,int b)
{
int temp;;
if(a>b)
{
temp=a;
a=b;
b=temp;
}
int i;
for(i=b;i>0;i--)//从最大的开始减
{
if(a%i==0&&b%i==0)
{
return i;
break;
}
}
}