我怎麼能在一個遞歸函數結合這兩個函數產生這樣的結果:遞歸階乘函數
factorial(6)
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
這些代碼
def factorial(n):
if n <1: # base case
return 1
else:
return n * factorial(n - 1) # recursive call
def fact(n):
for i in range(1, n+1):
print "%2d! = %d" % (i, factorial(i))
fact(6)
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
當你看到這兩個的執行給出了一個正確的答案,我只想把它做成一個遞歸函數。
我沒有得到任何理由都合併成一個功能。 – mqpasta 2010-12-21 18:08:29
嗯。這是功課嗎?你試過什麼了? – 2010-12-21 18:08:44
不要。它看起來很好。把它們結合起來會讓事情變得更加困難。 – FrustratedWithFormsDesigner 2010-12-21 18:08:48