簡體   English   中英

在Python中使用Maclaurin系列逼近e ^ x

[英]Approximation of e^x using Maclaurin Series in Python

我正在嘗試使用Maclaurin系列在名為my_exp(x)的函數中近似e ^ x,我相信到目前為止我所做的一切都是正確的,但是無論嘗試多少,我都會得到不正確的近似值。

import math
for i in range (x):
    exp = 1 + ((x**i)/math.factorial(i))
print(exp)

例如,每當我嘗試my_exp(12)時,都會得到18614.926233766233而不是162754.79141900392幫助?

為了累積該系列的條款,您需要用以下一行替換exp的賦值:

exp = exp + ((x**i)/math.factorial(i))

您的問題是e ^ x級數是一個無限級數,因此只求和該級數的前x個項是沒有意義的。

def myexp(x):
  e=0
  for i in range(0,100): #Sum the first 100 terms of the series
    e=e+(x**i)/math.factorial(i)
  return e

您還可以定義結果的精度,並獲得更好的解決方案。

def myexp(x):
    e=0
    pres=0.0001
    s=1
    i=1
    while s>pres:
        e=e+s
        s=(x**i)/math.factorial(i)
        i=i+1
    return e

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM