输入n 求阶乘 1+1/1!+1/2!+⋯+1/n!公式
n = int(input())
result = 1
temp = 1
for i in range(1, n + 1):
temp = temp * i
result = result + 1 / temp
print("{:.8f}".format(result))
添加了详细注释,如有帮助,请采纳
def sum(n):
def fact(a):
t=1
#求n的阶乘
for i in range(1,a+1):
t*=i
return t
s=0
#求阶乘的和
for i in range(1,n+1):
s+=fact(i)
return s
#将输入的字符串的值,赋值给n。
n=eval(input("请输入数字:"))
print("{}以内的阶乘之和为:{}".format(n,sum(n)))
这是自然常数e的级数展开式计算:
>>> n = int(input())
20
>>> res,tmp = 1,1
>>> for i in range(n):
tmp *= i+1
res += 1/tmp
>>> res
2.7182818284590455