python最大公约数和最小公倍数
辗转相除法
最大公约数和最小公倍数的求解方法有很多种,但是我们普遍认为辗转相除法是最好的。辗转相除法的步骤如下:
- 比较两数,并使m>n;
- 将m作被除数,n做除数,相除后余数为r;
- 循环判断r,若r==0,则n为最大公约数,结束循环。若r !=0 ,执行m=n,n=r;
最大公约数
def gcd(x, y):
m = max(x, y)
n = min(x, y)
while m%n:
m, n = n, m%n
return n
最小公倍数
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
def lcm(x, y):
m = max(x, y)
n = min(x, y)
while m%n:
m, n = n, m%n
return x*y//n
python自带gcd函数
>>> import math
>>> print(math.gcd(10,15))
5