这是一道简单的求解最小公倍数的题目。一般使用辗转相除法进行求解。代码也比较简单
#include<iostream>
using namespace std;
int gcd(int a,int b)
{
if(!b)
return a;
return gcd(b,a%b);
}
int main()
{
int a,b;
while(cin>>a>>b)
cout<<(a*b)/gcd(a,b)<<endl;
return 0;
}
这里我就不细说了。具体什么意思网上有许多解释。
这道题我没有使用这个方法。我使用了一个最容易理解的算法。
我使用了逐次求解的方法
#include <iostream>
using namespace std;
int main()
{
int m, n;
while (cin>>m>>n)
{
int temp;
if (m>n)
{
temp = m;
m = n;
n = temp;
}
for (int i = 1; i < 1000;i++)
{
if (n*i%m==0)
{
cout << n*i << endl;
break;
}
}
}
}