//輾轉(zhuǎn)相除法
int num1 = 48;
int num2 = 20;
int n1 = num1;? //n1存被除數(shù)
int n2 = num2; //n2存除數(shù)
int n3 = n1 % n2;
int n4 = n1 * n2;
while (n3 != 0) {
n1 = n2;
n2 = n3;
n3 = n1 % n2;
}
Console.WriteLine ("最大公約數(shù):" + n2);
Console.WriteLine ("最小公倍數(shù):" + num1 * num2 / n2);
// 老師講的普通方法
int num1 = 48;
int num2 = 20;
int pul = num1 * num2;
// 取兩者之間的最小值
int min = num1 < num2 ? num1 : num2;
int n = 1;
// for 循環(huán) 遞減匹配余數(shù) 知道余數(shù)為0
for (int i = min; i >= 1; i--) {
// 兩個(gè)數(shù) 余數(shù)為0
if ((num1 % i == 0) && (num2 % i == 0)) {
n = i;
// i遞減 當(dāng)取到第一個(gè)值是 停止語句執(zhí)行
break;
}
}
Console.WriteLine ("最大公約數(shù):" + n);
Console.WriteLine ("最小公倍數(shù):" + pul / n);