在此程序中,您將學(xué)習(xí)使用遞歸函數(shù)求數(shù)字的階乘。
要理解此示例,您應(yīng)該了解以下Python編程主題:
一個數(shù)字的階乘是從1到該數(shù)字的所有整數(shù)的乘積。
例如,階乘6是1*2*3*4*5*6 = 720。沒有為負(fù)數(shù)定義階乘,零階的階乘是1、0!= 1。
# Python 程序使用遞歸求數(shù)字的階乘
def recur_factorial(n):
if n == 1:
return n
else:
return n*recur_factorial(n-1)
num = 7
# 檢查數(shù)字是否為負(fù)
if num < 0:
print("抱歉,負(fù)數(shù)的階乘不存在")
elif num == 0:
print("0的階乘是1")
else:
print(num, "的階乘為 ", recur_factorial(num))輸出結(jié)果
7 的階乘為 5040
注意:要查找其他數(shù)字的階乘,請更改num的值。
此處,數(shù)字存儲在num中。該數(shù)字將傳遞給recur_factorial()函數(shù)以計(jì)算該數(shù)字的階乘。