解题思路:两个数的最大公约数可以用辗转相除法来计算,求得最大公约数后,由于最大公约数和最小公倍数的乘积等于这两个数的乘积,所以用两个数的乘积除以最大公约数就是这两个数的最小公倍数。
参考代码:
#include<iostream>
using namespace std;
int Gcd(int m, int n);
int main()
{
int x, y, a, b;
cin >> x >> y;
a = Gcd(x, y); //求最大公约数
b = x * y / a; //求最小公倍数
cout << a << ' ' << b;
return 0;
}
int Gcd(int m, int n)
{
int o;
o = m % n;
while (o != 0) {
m = n;
n = o;
o = m % n;
}
return n;
}
0.0分
0 人评分