Python 中的遞迴乘法
Fumbani Banda
2021年12月4日
本教程將介紹 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