Python 中的遞迴乘法

Fumbani Banda 2021年12月4日
Python 中的遞迴乘法

本教程將介紹 Python 中使用遞迴的整數乘法。

遞迴是一種使用函式呼叫自身一次或多次直到滿足基本條件的技術,此時其餘的重複從最後一個呼叫到第一個進行處理。遞迴廣泛用於程式設計以解決複雜問題,這些問題的解決取決於同一問題的較小例項的解決方案。

Python 中的遞迴乘法

一個數的乘法就是重複加法。遞迴乘法會反覆將兩個數中較大的數 (x,y) 相加,直到我們得到所需的乘積。

假設 x >= y。然後我們可以遞迴地將 x 新增到它自己的 y 次。在這種情況下,你遞迴地將 3 新增到自身兩次。

def multiply(x, y):
    if y == 0:
        return 0
    elif y < 0:
        return -(x - multiply(x, y + 1))
    else:
        return x + multiply(x, y - 1)


if __name__ == "__main__":
    print("3 * 2 = ", multiply(3, 2))
    print("3 * (-2) = ", multiply(3, -2))
    print("(-3) * 2 = ", multiply(-3, 2))
    print("(-3) * (-2)= ", multiply(-3, -2))

輸出:

3 * 2 =  6
3 * (-2) =  -6
(-3) * 2 =  -6
(-3) * (-2)=  6
作者: Fumbani Banda
Fumbani Banda avatar Fumbani Banda avatar

Fumbani is a tech enthusiast. He enjoys writing on Linux and Python as well as contributing to open-source projects.

LinkedIn GitHub

相關文章 - Python Math