求自然对数e的近似值

一、[问题描述]自然常数e可以用级数1+1/1!+1/2!+...+1/n!来近似计算。ei代表前i项求和。输入误差范围error,当 e(i+1)-e<error,则表示e的近似值满足误差范围。编程,从键盘输入error的值,计算并输出e的近似值,保留8位小数即可

[输入形式]输入一个 (0,0.1) 之间的实数[输出形式]输出计算所得的e的近似值,是一个实数,保留8位小数

[样例输入]0.01

[样例输出]e=2.71666667

[样例说明]

[评分标准]

def fact(n):
    s=1
    for i in range (1,n+1):
        s*=i
    return s
error=eval(input())
ei=1
n=100000000000#对于该程序而言,要求保留八位小数,所以即使要求精度极高,无意义
for i in range (1,n):
    ei+=1/fact(i)
    ei1=ei+1/fact(i+1)
    if ei1-ei<error:
        break
print("e={:.8f}".format(ei1))

二、

[问题描述]自然常数e可以用级数1+1/1!+1/2!+...+1/n!来近似计算。当任意项小于10^-4时结束计算。

[输入形式]五

[样例输出]e=2.71666667

[样例说明]可参考:print(”e的近似值为: f”.format(e))

[评分标准]

def fact(n):
    s = 1
    for i in range(1, n + 1):
        s *= i
    return s


ei = 1
n = 1
while 1 / fact(n) >= 10 ** (-4):
    ei += 1 / fact(n)
    n += 1
print("e的近似值值为:{:.6f}".format(ei))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值