自然常數e可以用級數1+1/1!+1/2!+⋯+1/n!來近似計算。ei代表前i項求和。輸入誤差范圍error,當
ei+1-ei<error,則表示e的近似值滿足誤差范圍。
輸入格式:
在一行輸入誤差范圍。
輸出格式:
在一行輸出e的近似值(保留6位小數)。
輸入樣例1:
在這里給出一組輸入。例如:
0.01
輸出樣例1:
在這里給出相應的輸出。例如:
2.716667
輸入樣例2:
在這里給出一組輸入。例如:
0.000000001
輸出樣例2:
在這里給出相應的輸出。例如:
2.718282
1 # 求誤差小於輸入值的e的近似值 2 # Author: cnRick 3 # Time : 2020-3-29 4 def factor(n): 5 if n == 0: 6 return 1.0 7 result = 1.0 8 for i in range(1,n+1): 9 result *= i 10 return result 11 def getE(i): 12 result = 0 13 for x in range(0,i+1): 14 result = result + 1.0/factor(x) 15 return result 16 17 error = float(input()) # 輸入誤差 18 cnt = 0 19 while True: 20 if (getE(cnt+1) - getE(cnt)) < error: 21 result = getE(cnt+1) 22 print("{:.6f}".format(result)) 23 break 24 cnt += 1 25