最大公约数递归
#include <stdio.h>
long int ismax( long int a, long int b) {
if (a % b == 0)
return b;
else
return ismax(b, a % b);
}
long int ismin( long int a, long int b) {
return a * b / ismax(a, b);
}
int main() {
long int n, m;
scanf("%ld %ld", &n, &m);
long int max = ismax(n, m);
long int min = ismin(n, m);
printf("%ld", max + min);
}
最大公约数递归函数:
long int ismax( long int a, long int b) {
if (a % b == 0)
return b;
else
return ismax(b, a % b);
}
最小公倍数可以直接调用最大公约数计算
long int ismin( long int a, long int b) {
return a * b / ismax(a, b);
}

京公网安备 11010502036488号