两个整数的最小公倍数等于两整数之积除以最大公约数
#include <iostream>
using namespace std;
int gcd(int a, int b)
{
int da = max(a,b);
int xiao = min(a,b);
if(da % xiao == 0)
return xiao;
else
return gcd(xiao, da % xiao);
}
// 两个整数的最小公倍数等于两整数之积除以最大公约数
int lcm(int a, int b)
{
return a*b / gcd(a, b);
}
int main()
{
int x, y;
cout << "输入两个数字(按Ctrl+Z结束输入): ";
while(cin >> x >> y)
cout << "这两个数的最大公因数是:" << gcd(x, y) << endl
<< "这两个数的最小公倍数是:" << lcm(x, y) << endl;
}
本文介绍了一种使用C++实现的算法,该算法能够高效地计算两个整数的最大公约数(GCD)和最小公倍数(LCM)。通过递归方式找到最大公约数,并利用其计算最小公倍数。适用于数学计算、计算机科学等领域。
165

被折叠的 条评论
为什么被折叠?



