# 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三种方法实现阶乘
猜你喜欢
转载自blog.csdn.net/qq_24822271/article/details/102505144
今日推荐
周排行