欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

求n的阶乘

程序员文章站 2024-03-15 16:41:18
...

第一种:普通的for循环

n = int(input('please inputer a integer:'))
num = 1
if n < 0:
    print('负数没有阶乘!')
elif n == 0:
    print('0的阶乘为1!')
else :
    for i in range(1,n + 1):
        num *= i
    print(num)

第二种:reduce()函数

#从functools中调用reduce()函数
from functools import reduce
n = int(input('please inputer a integer:'))
#使用lambda,匿名函数,迭代
num = reduce(lambda x,y:x*y,range(1,n))
print(num)

第三种:factorial()函数

import math
n= int(input('please inputer a integer:'))
value = math.factorial(n)
print(value)

第四种:递归调用

def jc(n):
    if n == 0:
        return 1
    else:
        return n * jc(n - 1)

n= int(input('please inputer a integer:'))
print(jc(n))

 

相关标签: Python基础