求输入数字的阶乘 及加和 #s=1!+2!+3!+…..+n!

#s=1!+2!+3!+…..+n!

from functools import reduce

def factorial(n):
    result=0
    for i in range(1,n+1):
        result+=reduce(lambda x,y:x*y,list(range(1,i+1)))
        print('%s的阶乘加和结果为:%s'%(i,reduce(lambda x,y:x*y,list(range(1,i+1)))))
    return result

print('1到%s的阶乘加和结果是:%s'%(5,factorial(5)))

#方法2
def
factorial(n): result=0 for i in range(1,n+1): rr=1 for j in range(1,i+1): rr*=j result+=rr print('%s的阶乘加和结果为:%s'%(i,rr)) return result print('1到%s的阶乘加和结果是:%s'%(5,factorial(5))) print('1到%s的阶乘加和结果是:%s'%(4,factorial(4)))
原文地址:https://www.cnblogs.com/xiaoxiao075/p/10195660.html