Python 程序:使用递归找到数字的阶乘
要理解这个例子,你应当了解以下Python 编程主题的知识:
一个数的阶乘是从 1 到该数所有整数的乘积。
例如,6 的阶乘是 1*2*3*4*5*6 = 720
。阶乘对负数没有定义,而零的阶乘为一,0! = 1。
源代码
# 使用递归求一个数的阶乘
def recur_factorial(n):
if n == 1:
return n
else:
return n*recur_factorial(n-1)
num = 7
# 检查数值是否为负数
if num < 0:
print("抱歉,负数没有阶乘")
elif num == 0:
print("0 的阶乘是 1")
else:
print("数字", num, "的阶乘是", recur_factorial(num))
输出
数字7的阶乘是5040
注意: 要求另一个数字的阶乘,请更改 num
的值。
这里,数字存储在 num
中。这个数字传递给 recur_factorial()
函数来计算该数字的阶乘。