python编程 求e的近似值

有个测试点为非零返回,不知道哪里没考虑到,求大神修改

def f(x,n):
s=1
for i in range(1,n+1):
s=s*i
a=1/s
return a
def e(n):
s=1
if n<=0:
print('不符合要求')
elif n>1000:
print('不符合要求')
elif isinstance(n,float):
print('不符合要求')
else:
for i in range(1,n+1):
s=f(i,i)+s
print('%.8f'%s)
if __name__=='__main__':
n=int(input('请录入飞负正数<=1000\n'))
e(n)
我写的,格式化下,看看测试点对不追问

谢谢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-12
应该是range(1,a+1)的a不用+1。追问

如果a不+1,则只循环到a-1,+1才能循环到a

第2个回答  2019-04-07
所以现在怎么解决的?
相似回答