思路:辗转相除法
第一种方法:
int normal_gcd(int x, int y) {
int min,max;
if (x >= y)
min = y;
else
min = x;
while (min != 0) {
if ((x%min == 0)&&(y%min==0))return min;
else min -= 1;
}
}
第二种方法:
int Euc_rec_gcd(int x, int y) { //Euclid
if (y == 0)return x;
else
return Euc_rec_gcd(y, x%y);
}
第三种方法:
int Euc_normal_gcd(int x, int y) {
int a = y;
int b = x%y;
int tmp;
while (b != 0) {
tmp = a;
a = b;
b = tmp%a;
}
return a;
}