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

最小公倍数

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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM