python编程:欧几里得算法又称辗转相除法,用于计算两个非负整数a,b的最大公约数。假如需要求1997和615两个正整数的最大公约数,用欧几里得算法,是这样的
至此,最大公约数为1
以除数和余数反复做除余运算,当余数为0时,取当前算式除数为最大公约是,所以就得出了1997和615的最大公约数为1.
在获得了最大公约数之后,再用两数的乘积除以最大公约数,即可得到最小公倍数。
代码如下:
a,b=eval(input())
if(b>a):
a,b=b,a
x=a*b
for i in range(0,b):
c=a%b
if(c==0):
d=b
break
a=b
b=c
y=int(x/d)
print("{},{}".format(d,y))
注意:
y=int(x/d)
要把结果改为整型