【PTA-python】第4章-13 求误差小于输入值的e的近似值 (20 分)

第4章-13 求误差小于输入值的e的近似值

分析

首先建立一个取ei的函数,while判断是否满足条件。不符合条件,cnt自增1,继续判断。直至满足条件

题目

自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。ei代表前i项求和。输入误差范围error,当
ei+1-ei<error,则表示e的近似值满足误差范围。
输入格式:

在一行输入误差范围。
输出格式:

在一行输出e的近似值(保留6位小数)。

解法

n=float(input())
def e(n):
    m=1
    s=1
    for i in range(1,n):
        m*=i
        s+=1/m
    return s
cnt=1
while(True):
    if abs(e(cnt)-e(cnt+1))<n:
        print("{:.6f}".format(e(cnt+1)))
        break
    else:
        cnt+=1
posted @ 2021-04-18 20:46  flybird2008  阅读(18)  评论(0)    收藏  举报  来源