1063: 最大公约与最小公倍
时间限制: 1 Sec 内存限制: 128 MB
[状态] [讨论版] [提交] [命题人:admin]
题目描述
输入两个正整数,输出其最大公约数和最小公倍数。
输入
输入两个正整数n和m(n,m<=1000000)。输入保证最终结果在int范围内。
输出
输出两个整数,用空格隔开。表示m和n的最大公约数和最小公倍数。
样例输入 Copy
4 6
样例输出 Copy
2 12
提示
注意运算过程中的溢出问题
参考代码
#include <stdio.h>
#include <math.h>
int main()
{
int a, b, c, x, y;
scanf("%d%d", &a, &b);
x=a;
y=b;
while(a%b!=0)
{
c=a;
a=b;
b=c%a;
}
a=x/b*y;
printf("%d %d", b, a);
return 0;
}