C/C++训练1---最大公约数与最小公倍数
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
输入两个正整数,求它们的最大公约数与最小公倍数。
Input
输入两个正整数,两个整数之间用空格分开。
数据保证在 int 范围内。
Output
第一行输出最大公约数;
第二行输出最小公倍数。
答案保证在 int 范围内。
Sample Input
64 48
Sample Output
16 192
Hint
Source
#include<stdio.h>
int main()
{
int a, b, c, s;
scanf("%d %d", &a, &b);
s = a * b;
if (a < b) {
int t = a;
a = b;
b = t;
}
c = a % b;//辗转相除法求最大公约数
while (c) {
a = b;
b = c;
c = a % b;
}
printf("%d\n%d\n", b, s / b);
return 0;
}