最大公因數與最小公倍數算法
最大公因數(GCD)和最低公倍數(LCM)是兩個在數學中常用的概念。它們在解決一些問題時非常有用,例如求解最大公約數和最低公倍數的問題。
以下是使用Python語言實現求最大公因數和最低公倍數的算法:
求最大公因數(GCD)
算法步驟如下:
- 如果兩個數都為零,返回零,否則繼續執行下一步。
- 將其中一個數設為最大公因數和另一個數為較小的一個的倍數,假設其為 a 和 b。
- 不斷用最大公因數去除較小的一個數為 a_div_b,直到 a_div_b 等於零。此時 a 就是我們要找的答案。
下面是 Python 代碼實現:
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
求最低公倍數(LCM)
算法步驟如下:
- 將兩個數的乘積除以它們的最大公因數,得到的就是最低公倍數。
下面是 Python 代碼實現:
def lcm(a, b):
return a * b // gcd(a, b)
使用這些函式時,只需將兩個數字作為參數傳入即可。例如,gcd(7, 11)
將返回 3
,lcm(7, 11)
將返回 77
。