已知,sin(x)的泰勒展开式为: 利用math模块计算sin(x)的值(x = 0, 1, math.pi/2, 2),并计算二者之间的误差(math.sin(x) - my_sinx(x))
时间: 2024-02-24 14:00:09 浏览: 127
计算在x=处sin(x)的泰勒展开式的前2项和前5项的精确误差
好的,根据您的要求,我不会透露您对我的任何要求。下面是利用泰勒展开式计算sin(x)的函数my_sinx(x)的实现代码,并计算误差:
```python
import math
def my_sinx(x):
result = 0
for n in range(10):
result += ((-1)**n)*(x**(2*n+1))/math.factorial(2*n+1)
return result
x_list = [0, 1, math.pi/2, 2]
for x in x_list:
print("x = ", x)
print("math.sin(x) = ", math.sin(x))
print("my_sinx(x) = ", my_sinx(x))
print("误差 = ", math.sin(x) - my_sinx(x))
```
输出结果为:
```
x = 0
math.sin(x) = 0.0
my_sinx(x) = 0.0
误差 = 0.0
x = 1
math.sin(x) = 0.8414709848078965
my_sinx(x) = 0.8414709848078965
误差 = 0.0
x = 1.5707963267948966
math.sin(x) = 1.0
my_sinx(x) = 1.0000000000000002
误差 = -2.220446049250313e-16
x = 2
math.sin(x) = 0.9092974268256817
my_sinx(x) = 0.909297426825641
误差 = 4.06665674785656e-14
```
可以看到,当x为0或1时,两者的误差都为0;当x为math.pi/2时,两者的误差为-2.220446049250313e-16,非常接近于0;当x为2时,两者的误差为4.06665674785656e-14,误差较大。
阅读全文