习题4-7 最大公约数和最小公倍数 (15 分)
1. 题目摘自
https://pintia.cn/problem-sets/12/problems/293
2. 题目内容
本题要求两个给定正整数的最大公约数和最小公倍数。
输入格式:
输入在一行中给出两个正整数 M
和 N(≤1000)
。
输出格式:
在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔。
输入样例:
511 292
输出样例:
73 2044
3. 源码参考
#include<iostream>
using namespace std;
int main()
{
int m, n, t;
int a, b;
cin >> m >> n;
if (m < n)
{
t = m;
m = n;
n = t;
}
a = m;
b = n;
while (b != 0)
{
t = m % b;
a = b;
b = t;
}
cout << a << " " << m * n / a << endl;
return 0;
}