可以在不使用 "power" 和 "factorial" 函数的情况下更改 python 中的代码,以使用泰勒级数计算 cos (x) 的值
Possibility to change code in python without using "power" and "factorial" function to calculate the value of cos (x) with a Taylor Series
我正在尝试使用泰勒级数计算 cos(x)
的值:
Value of cos(x) with Taylor Series
我的代码是这样的。
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!
是泰勒级数的第三个元素。
注意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
我正在尝试使用泰勒级数计算 cos(x)
的值:
Value of cos(x) with Taylor Series
我的代码是这样的。
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!
是泰勒级数的第三个元素。
注意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