当前位置:首页python > 正文

python辗转相除法求最小公倍数

作者:野牛程序员:2023-06-20 06:55:55python阅读 2869

辗转相除法(又称欧几里德算法)可以用来求最大公约数(GCD)而不是最小公倍数(LCM)。不过,我们可以利用最大公约数来求解最小公倍数。

最小公倍数(LCM)可以通过以下公式计算:

LCM(a, b) = (a * b) / GCD(a, b)

因此,我们可以先使用辗转相除法来计算最大公约数,然后使用上述公式来求解最小公倍数。

下面是使用Python实现辗转相除法和求最小公倍数的示例代码:

def gcd(a, b):
    while b:
        a, b = b, a % b
    return a

def lcm(a, b):
    return (a * b) // gcd(a, b)

# 示例用法
num1 = 12
num2 = 18

result = lcm(num1, num2)
print(f"最小公倍数为: {result}")

在上面的代码中,我们定义了两个函数:gcd用于计算最大公约数,lcm用于计算最小公倍数。然后,我们提供两个整数 num1num2,并使用 lcm 函数来计算它们的最小公倍数。最后,我们打印结果。

在这个示例中,输入的 num1num2 分别为 12 和 18,最小公倍数为 36。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击