您的位置:

Python 程序:求两个数的 LCM

编写一个 Python 程序,使用 While 循环、函数和递归来查找两个数的 LCM。

在数学中,两个或两个以上整数的最小公倍数(LCM)是最小的正整数,它可以被给定的整数值完美整除而没有余数。例如,整数 2 和 3 的 LCM 值是 12,因为 12 是可被 2 和 3 整除的最小正整数(余数为 0)。

Python 程序查找两个数的 LCM 示例 1

这个 python 程序允许用户输入两个正整数值。在 Python while 循环中,我们使用 If 语句来检查最大% a 和最大% b 的余数是否等于零。如果为真,最小公倍数=最大值,否则跳过该值。

a = float(input(" Please Enter the First Value a: "))
b = float(input(" Please Enter the Second Value b: "))

if(a > b):
    maximum = a
else:
    maximum = b

while(True):
    if(maximum % a == 0 and maximum % b == 0):
        print("\n Least Common Multiple of {0} and {1} = {2}".format(a, b, maximum))
        break;
    maximum = maximum + 1
 Please Enter the First Value a: 15
 Please Enter the Second Value b: 20

 Least Common Multiple of 15.0 and 20.0 = 60.0

用函数求两个数 LCM 的 Python 程序

这个 Python LCM 程序同上。然而,我们正在使用功能分离逻辑

def findLeastCM(a, b):
    if(a > b):
        maximum = a
    else:
        maximum = b

    while(True):
        if(maximum % a == 0 and maximum % b == 0):
            Val = maximum;
            break;
        maximum = maximum + 1
    return Val

num1 = float(input(" Please Enter the First : "))
num2 = float(input(" Please Enter the Second : "))
Val = findLeastCM(num1, num2)
print("\n Least Common Multiple of {0} and {1} = {2}".format(num1, num2, Val))
 Please Enter the First : 20
 Please Enter the Second : 45

 Least Common Multiple of 20.0 and 45.0 = 180.0

用 GCD 计算两个数 LCM 的 Python 程序

这个 python 程序找到两个数字的 GCD。利用这个,我们计算出 LCM。这里,我们使用 Temp 变量来查找 GCD。

num1 = float(input(" Please Enter the First : "))
num2 = float(input(" Please Enter the Second : "))

a = num1
b = num2

while(num2 != 0):
    temp = num2
    num2 = num1 % num2
    num1 = temp

gcd = num1
print("\n GCD of {0} and {1} = {2}".format(a, b, gcd))

Val = (a * b) / gcd
print("\n LCM of {0} and {1} = {2}".format(a, b, Val))
 Please Enter the First : 2
 Please Enter the Second : 3

 GCD of 2.0 and 3.0 = 1.0

 LCM of 2.0 and 3.0 = 6.0

用递归法计算两个数 LCM 的 Python 程序

它允许用户输入两个正整数值,并通过递归调用 findgcd 函数来计算这两个值的 GCD。

def findgcd(a, b):
    if(b == 0):
        return a;
    else:
        return findgcd(b, a % b)

num1 = float(input(" Please Enter the First Value  Num1 : "))
num2 = float(input(" Please Enter the Second Value Num2 : "))

gcd = findgcd(num1, num2)
print("\n GCD of {0} and {1} = {2}".format(num1, num2, gcd))

lcm = (num1 * num2) / gcd
print("\n LCM of {0} and {1} = {2}".format(num1, num2, lcm))