// 编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:求出两个非零正整数的最大公约数(考虑递归和非递归两种方法,任选一种实现),
// 并作为函数值返回。再设计一个函数,函数的功能是计算两个非零正整数的最小公倍数。
#include <stdio.h>
int min(int, int, int);
int fun(int, int, int);
int main(void)
{
int a, b, max;
scanf("%d%d", &a, &b);
max = (a > b) ? a : b;
printf("最大公约数 = %d\n", fun(a, b, max));
printf("最小公倍数 = %d\n", min(a, b, max));
}
int fun(int a, int b, int max)
{
int num = 1;
for (int i = 2; i < max; i++)
{
if((a % i == 0) && (b % i == 0))
{
num *= i;
a /= i;
b /= i;
i = 1;
}
}
return num;
}
int min(int a, int b, int max)
{
return a * b / fun(a ,b ,max);
}