21xrx.com
2025-01-03 17:56:51 Friday
登录
文章检索 我的文章 写文章
C++代码:求最小公倍数
2023-07-10 03:20:19 深夜i     --     --
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++代码实现起来较为简单,运行效率也较高,是求解最小公倍数的常用方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复