Python求阶乘倒数的累加和

显示结果中的n用输入的具体n值代替
2025-03-13 23:31:33
推荐回答(2个)
回答1:

#python 3.6.4

sum = 0

temp=1

shu = int(input("请输入所求的一个数阶乘倒数的累加和: "))

for i in range(1, shu+1):

    temp=temp*i

    sum=sum+1.0/temp    

print("1!+2!+.....+{0}={1}".format(shu,sum))



测试:

请输入所求的一个数阶乘倒数的累加和: 1

1!+2!+.....+1=1.0

 

请输入所求的一个数阶乘倒数的累加和: 2

1!+2!+.....+2=1.5

 

请输入所求的一个数阶乘倒数的累加和: 3

1!+2!+.....+3=1.6666666666666667

 

请输入所求的一个数阶乘倒数的累加和: 10

1!+2!+.....+10=1.7182818011463847

请输入所求的一个数阶乘倒数的累加和: 100

1!+2!+.....+100!=1.7182818284590455


#n充分大,结果就是e-1(e=2.718281828...)

回答2:

python3的代码可以这么写:

#-*-coding:utf8;-*-

#qpy:3

#qpy:console

from math import factorial as fact

n=int(input("请输入正整数n:"))

s=0

for i in range(n):s+=1/fact(i+1)

print("sum(1/i!,1,n)=",s)

调试结果

代码截图