算法训练 5-1最小公倍数
时间限制:1.0s 内存限制:256.0MB
提交此题
问题描述
编写一函数lcm,求两个正整数的最小公倍数。
样例输入
3 5
样例输出
15
与上面的样例输入对应的输出。
例:
数据规模和约定
输入数据中每一个数的范围。
例:两个数都小于65536。
分析:求最小公倍数的步骤:
(1)找到两个数的最大公因数
(2)其中一个数除以最大公因数再和另一个数相乘,即最小公倍数。
#include <iostream>
using namespace std;
int fun(int a, int b)
{
for(int i = (a < b ? a : b); i > 0; i--)
{
if(a % i == 0 && b % i == 0)
{
return a*b/i;
}
}
return 0;
}
int main()
{
int a, b;
cin >> a >> b;
cout << fun(a, b);
return 0;
}