可以在不使用"power"和"factorial"函数的情况下更改python中的代码,以使用泰勒级数计算cos(x)的值



我正在尝试用泰勒级数计算cos(x)的值: cos(x) 与泰勒级数的值

我的代码如下所示。

x = float(input("x: "))
n = int(input("n: "))
k=0
s=0
sign=1
while k<n:
term = sign * x **(k)/math.factorial(k)
s = s+term
k = k+2
sign = -sign

有没有办法不使用**-power或factorial功能而不使用其他功能。我的想法是只用一个循环运行代码。

n代表系列中的第n个元素,就像x^4/x!是泰勒系列的第 3 个元素一样。

请注意,4! = 2! * 3 * 4; 请注意,x ^ 4 = x ^ 2 * x * x。

与其每次都计算这些,不如你可以做这样的事情:

x = float(input("x: "))
n = int(input("n: "))
k = 0
s = 0
sign = 1
factorial = 1
x_k = 1
while k < n:
term = sign * x_k / factorial
s = s + term
k = k + 2
# calculate next k! and x ^ k
factorial *= k * (k - 1)
x_k *= x * x
sign = -sign

相关内容

最新更新