python求最大公約數(shù)和最小公倍數(shù)的簡(jiǎn)單方法
python怎么求最大公約數(shù)和最小公倍數(shù)
一、求最大公約數(shù)
用輾轉(zhuǎn)相除法求最大公約數(shù)的算法如下:
兩個(gè)正整數(shù)a和b(a>b),它們的最大公約數(shù)等于a除以b的余數(shù)c和b之間的最大公約數(shù)。比如10和25,25除以10商2余5,那么10和25的最大公約數(shù),等同于10和5的最大公約數(shù)。
具體代碼如下:
def gongyue(a, b):
"""
歐幾里得算法----輾轉(zhuǎn)相除法
:param a: 第一個(gè)數(shù)
:param b: 第二個(gè)數(shù)
:return: 最大公約數(shù)
"""
# 如果最終余數(shù)為0 公約數(shù)就計(jì)算出來(lái)了
while(b!=0):
temp = a % b
a = b
b = temp
return a
二、求最小公倍數(shù)
求出a,b的最大公約數(shù)后,利用gongbei(a,b) = (a*b)/gongyue(a,b) 計(jì)算出兩個(gè)數(shù)的最小公倍數(shù):
# 求兩個(gè)數(shù)的最小公倍數(shù) def gongbei(a,b): return a * b / gongyue(a, b)
知識(shí)點(diǎn)補(bǔ)充:
1. 求最小公倍數(shù)的算法:
最小公倍數(shù) = 兩個(gè)整數(shù)的乘積 / 最大公約數(shù)
所以我們首先要求出兩個(gè)整數(shù)的最大公約數(shù), 求兩個(gè)數(shù)的最大公約數(shù)思路如下:
2. 求最大公約數(shù)算法:
① 整數(shù)A對(duì)整數(shù)B進(jìn)行取整, 余數(shù)用整數(shù)C來(lái)表示 舉例: C = A % B
② 如果C等于0,則C就是整數(shù)A和整數(shù)B的最大公約數(shù)
③ 如果C不等于0, 將B賦值給A, 將C賦值給B ,然后進(jìn)行 1, 2 兩步,直到余數(shù)為0, 則可以得知最大公約數(shù)
以上就是本次介紹的全部相關(guān)知識(shí)點(diǎn),感謝大家的學(xué)習(xí)和對(duì)腳本之家的支持。
- Python自定義函數(shù)實(shí)現(xiàn)求兩個(gè)數(shù)最大公約數(shù)、最小公倍數(shù)示例
- Python實(shí)現(xiàn)的求解最小公倍數(shù)算法示例
- Python實(shí)現(xiàn)利用最大公約數(shù)求三個(gè)正整數(shù)的最小公倍數(shù)示例
- Python基于遞歸算法求最小公倍數(shù)和最大公約數(shù)示例
- python輾轉(zhuǎn)相除法求最大公約數(shù)和最小公倍數(shù)的實(shí)現(xiàn)
- Python基于遞歸和非遞歸算法求兩個(gè)數(shù)最大公約數(shù)、最小公倍數(shù)示例
- Python 代碼實(shí)現(xiàn)列表的最小公倍數(shù)
- 最小公倍數(shù)Python實(shí)現(xiàn)的方法例子
相關(guān)文章
Python 中的 plt.hist 函數(shù)基本用法詳解
plt.hist 函數(shù)用于繪制直方圖,直方圖是一種用來(lái)表示數(shù)據(jù)分布的圖形,它將數(shù)據(jù)分成若干個(gè)區(qū)間,然后統(tǒng)計(jì)每個(gè)區(qū)間中數(shù)據(jù)的數(shù)量,最終以柱狀圖的形式展示出來(lái),這篇文章主要介紹了Python 中的 plt.hist 函數(shù)基本用法詳解,需要的朋友可以參考下2021-04-04
Python爬取智聯(lián)招聘數(shù)據(jù)分析師崗位相關(guān)信息的方法
這篇文章主要介紹了Python爬取智聯(lián)招聘數(shù)據(jù)分析師崗位相關(guān)信息的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
anaconda升級(jí)sklearn版本的實(shí)現(xiàn)方法
這篇文章主要介紹了anaconda升級(jí)sklearn版本的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Python3 串口接收與發(fā)送16進(jìn)制數(shù)據(jù)包的實(shí)例
今天小編就為大家分享一篇Python3 串口接收與發(fā)送16進(jìn)制數(shù)據(jù)包的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
Python視頻處理庫(kù)VidGear使用小結(jié)
VidGear是一個(gè)高性能的Python視頻處理庫(kù),本文主要介紹了Python視頻處理庫(kù)VidGear使用小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01
django 通過(guò)URL訪問(wèn)上傳的文件方法
今天小編就為大家分享一篇django 通過(guò)URL訪問(wèn)上傳的文件方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07

