首頁  >  文章  >  後端開發  >  python怎麼求最大公約數和最小公倍數

python怎麼求最大公約數和最小公倍數

angryTom
angryTom原創
2020-02-13 09:39:0122758瀏覽

python怎麼求最大公約數和最小公倍數

python怎麼求最大公約數、最小公倍數

一、求最大公約數

用輾轉相除法求最大公約數的演算法如下:  

兩個正整數a和b(a>b),它們的最大公約數等於a除以b的餘數c和b之間的最大公約數。例如10和25,25除以10商2餘5,那麼10和25的最大公約數,等於10和5的最大公約數。

具體程式碼如下:

def gongyue(a, b):
    """
    欧几里得算法----辗转相除法
    :param a: 第一个数
    :param b: 第二个数
    :return: 最大公约数
    """
    # 如果最终余数为0 公约数就计算出来了
    while(b!=0):
        temp = a % b
        a = b
        b = temp
    return a

二、求最小公倍數

求a,b的最大公約數後,利用gongbei (a,b) = (a*b)/gongyue(a,b) 計算出兩個數的最小公倍數:

# 求两个数的最小公倍数
def gongbei(a,b):
    return a * b / gongyue(a, b)

推薦學習:Python影片教學

#

以上是python怎麼求最大公約數和最小公倍數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn