python求最大公约数最小公倍数
时间: 2023-11-01 14:56:28 浏览: 108
最公约数(Greatest Common Divisor,GCD)和最小公倍数(Least Common Multiple,LCM)是数学中常见的概念。在Python中,可以使用两种方法来求解最大公约数和最小公倍数。
第一种方法是使用欧几里得算法。该算法通过反复迭代求解两个数的余数,直到余数为0。最后一个非零余数即为最大公约数,而最小公倍数等于两个数的乘积除以最大公约数。以下是一个使用欧几里得算法求解最大公约数和最小公倍数的Python代码示例:
a = int(input('请输入第一个数字:'))
b = int(input('请输入第二个数字:'))
# 欧几里得算法
while b:
a, b = b, a % b
# 最大公约数
gcd = a
# 最小公倍数
lcm = m * n // gcd
print('最大公约数是:', gcd)
print('最小公倍数是:', lcm)
第二种方法是使用更相减损法。该方法通过反复迭代求解两个数的差,直到差为0。最后一个非零差即为最大公约数,而最小公倍数等于最大公约数和两个数的乘积的商。以下是一个使用更相减损法求解最大公约数和最小公倍数的Python代码示例:
a = int(input('请输入第一个数字:'))
b = int(input('请输入第二个数字:'))
# 更相减损法
while a != b:
if a > b:
a = a - b
else:
b = b - a
# 最大公约数
gcd = a
# 最小公倍数
lcm = m * n // gcd
print('最大公约数是:', gcd)
print('最小公倍数是:', lcm)
阅读全文