在C++中求最小公倍数的方法

分类:知识百科 日期: 点击:0

在C++中,求最小公倍数的方法主要有两种,一种是使用辗转相除法,一种是使用穷举法。

辗转相除法

辗转相除法是一种较为常用的求最小公倍数的方法,它的基本思想是:两个数的最小公倍数等于这两个数的乘积除以它们的最大公约数。

下面介绍一下辗转相除法的使用方法:

  • 计算出两个数的最大公约数,可以使用辗转相除法,也可以使用其他方法;
  • 计算出它们的乘积;
  • 将这个乘积除以它们的最大公约数,就得到了它们的最小公倍数。
int gcd(int a, int b)
{
    int t;
    while(b != 0)
    {
        t = b;
        b = a % b;
        a = t;
    }
    return a;
}

int lcm(int a, int b)
{
    return a * b / gcd(a, b);
}

穷举法

穷举法是另一种求最小公倍数的方法,它的基本思想是:从两个数的最小值开始,依次穷举,直到找到两个数的公倍数。

下面介绍一下穷举法的使用方法:

  • 计算出两个数的最小值;
  • 从最小值开始,依次穷举,直到找到两个数的公倍数,这个数就是它们的最小公倍数。
int lcm(int a, int b)
{
    int min = a < b ? a : b;
    int max = a > b ? a : b;
    int i = min;
    while(i % max != 0)
    {
        i += min;
    }
    return i;
}
标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。