最大公因數gcd程式

以下是使用Python編寫的最大公因數(GCD)的程式:

def gcd(a, b):
    while b != 0:
        a, b = b, a % b
    return a

# 測試
print(gcd(12, 15))  # 輸出應為 3

這個程式使用了輾轉相除法(Euclidean algorithm)來計算最大公因數。輾轉相除法是一種常用的求最大公因數的方法,其基本思想是用兩個數的差來不斷替換原來的數,直到其中一個數為0為止。在每次替換時,用較小數除以較大數,得到的結果就是兩個數的最大公因數。

這個程式中,我們定義了一個名為 gcd 的函式,它接受兩個參數 ab,並返回它們的最大公因數。在函式中,我們使用一個循環來不斷用 b 替換 a,直到 b 變為 0。在每次替換時,我們用 a % b 得到一個新的結果,這個結果就是當前的 ab 的最大公因數。最後,函式返回這個結果。

測試部分我們使用了一個簡單的例子,輸入兩個數字 12 和 15,這兩個數字的最大公因數是 3。程式會輸出這個結果。