a, b = eval(input("输入两个正整数:"))
c = a * b
# 求最大公因数,用辗转相除法。
if a < b:
a, b = b, a
while a % b != 0:
r = a % b
a, b = b, r
the_greatest_common_divisor = b
# 求最小公倍数,使用公式:两数之积=最大公因数×最小公倍数
the_least_common_multiple = int(c / the_greatest_common_divisor)
print(f"最大公因数为:{the_greatest_common_divisor}")
print(f"最小公倍数为:{the_least_common_multiple}")
还有一种思路简单的求最大公因数的方法:
for i in range(1,min(a,b)+1):
if a % i == 0 and b % i == 0:
the_greatest_common_divisor = i