21xrx.com
2025-04-10 22:10:48 Thursday
文章检索 我的文章 写文章
C++代码:求最小公倍数
2023-07-10 03:20:19 深夜i     12     0
C++代码 最小公倍数

最小公倍数是指两个或多个数共有的倍数中最小的一个,可以通过以下代码来求解。

#include <iostream>
using namespace std;
int gcd(int a, int b) {
  if (b == 0)
    return a;
  
  return gcd(b, a % b);
}
int lcm(int a, int b) {
  return a * b / gcd(a, b);
}
int main() {
  int a, b;
  cin >> a >> b;
  int result = lcm(a, b);
  cout << "最小公倍数是:" << result << endl;
  return 0;
}

以上代码中,求最小公倍数的主要算法是利用最大公约数来实现的。如果两个数a、b的最大公约数是g,那么它们的最小公倍数就是a * b / g。

由此,我们可以定义一个函数`lcm`,并在其中调用另一个函数`gcd`来求最大公约数。

在`gcd`函数中,首先考虑了b为0的情况,如果b为0,那么a就是最大公约数,直接返回a。否则,使用递归的方式调用`gcd`函数,继续求解b和a%b的最大公约数。

最后,我们在主函数中获取两个整数的输入,并调用`lcm`函数来计算它们的最小公倍数。最后,输出最小公倍数的结果即可。

总之,C++代码实现起来较为简单,运行效率也较高,是求解最小公倍数的常用方法。

  
  

评论区

请求出错了