最大公约数
任务描述
最大公约数(也称最大公因数、最大公因子),指两个或多个整数共有约数中最大的一个。
编程输入两个正整数,输出它们的最大公约数。
输入示例
36 24
输出示例
12
代码
方法1:辗转相除法
#include <stdio.h>
int main() {
int num1, num2;
int result;
scanf("%d %d", &num1, &num2);
while (num2 != 0) {
int temp = num1 % num2;
num1 = num2;
num2 = temp;
}
result = num1;
printf("%d", result);
return 0;
}
方法2更相减损术
#include <stdio.h>
int main() {
int num1, num2;
int result;
scanf("%d %d", &num1, &num2);
while (num1 != num2) {
if (num1 > num2) {
num1 -= num2;
} else {
num2 -= num1;
}
}
result = num1;
printf("%d", result);
return 0;
}