# python三种方法实现阶乘
# while循环实现阶乘
def fact(n):
if n == 0:
return 1 # 0 的阶乘为 1
elif n < 0:
return '负数没有阶乘'
s = 1
while n:
s = s*n
n -= 1
return s
print(fact(-3))
#递归实现阶乘
def fact2(n):
if n == 0:
return 1 # 0 的阶乘为 1
elif n < 0 :
return '负数没有阶乘'
elif n == 1:
return 1
else:
return n*fact2(n-1)
r = fact2(4)
print(r)
#range实现阶乘
def fact3(n):
if n == 0:
return 1 # 0 的阶乘为 1
elif n < 0:
return '负数没有阶乘'
else:
s = 1
for i in range(1,n+1):
s = s*i
return s
r = fact3(0)
print(r)
python三种方法实现阶乘
最新推荐文章于 2023-07-02 21:45:49 发布