题目描述
求数a和数b的最大公约数和最小公倍数.(a和b都是(1--100000)之间的数)输入
有多组测试数据.每一组输入的测试数据占一行.从键盘输入a,b.当输入为0和0时程序结束.输出
输出最大公约数和最小公倍数.每一组测试数据的输出结果占一行.最大公约数和最小公倍数之间有两个空格隔开.样例输入
2 6
5 6
0 0
样例输出
2 6
1 30
#include<stdio.h>
int main()
{
int m, n;
int sum;
int num1;
int num2;
while (scanf("%d%d", &m, &n) != EOF)
{
if (m == 0 && n == 0)
{
break;
}
num1 = m;
num2 = n;
while (n != 0)
{
sum = m % n;
m = n;
n = sum;
}
printf("%d %d\n", m, num1 * num2 / m);
}
return 0;
}