输入四个整数,编写函数common(),参数为整型,用辗转相除法,输出它们的最大公约数、最小公倍数
# 求两个数的最大公约数
def gcd(x,y):
while y:
x,y = y,x % y
return x
# 求两个数的最小公倍数
def lcm(x,y):
return int(x * y / gcd(x,y)) # 乘积除以最大公约数
dataList = input("请输入四个数,用逗号隔开:").strip()
a,b,c,d = [int(x) for x in dataList.split(",")]
res = gcd(a,b)
res = gcd(res,c)
res = gcd(res,d) # 最大公约数
res1 = lcm(a,b)
res1 = lcm(res1,c)
res1 = lcm(res1,d)
print("最大公约数: {},最小公倍数: {}".format(res,res1))
如果觉得答案对你有帮助,请点击下采纳,谢谢~