Python编写程序,实现下面功能: 用多项式计算e的近似值。

自然常数 e 可以用级数 1+1/1!+1/2!+⋯+1/n!+⋯ 来近似计算。

def factorial(n):
    sum = 1
    for i in range(1,n+1):
        sum = sum * i
    return sum

n = int(input())
result = 1
for i in range(1,n+1):
    result = result + 1/factorial(i)

print("{:.8f}".format(result))
import math

def getE(n):
    s = 1
    for i in range(1, n + 1):
        s += (1 / math.factorial(i))
    return s

print(getE(10))

上面的答主答案也是对的。但是每考虑重复计算的问题。


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))