sin(x)的泰勒公式展开式是: sin(x)=x-x^3/3!+x^5/5!-x^7/7!+x^9/9!-……(写成无穷级数的形式)。 请编程实现:输入一个实数x,可计算出sin(x)的值,误差小于10-5
时间: 2024-02-19 17:59:08 浏览: 99
计算在x=处sin(x)的泰勒展开式的前2项和前5项的精确误差
以下是 Python 的实现代码:
```python
import math
def sin(x):
# 将角度转换为弧度
x = math.radians(x)
result = 0
term = x
n = 1
while abs(term) > 1e-5:
result += term
n += 2
term = (-1) ** (n // 2) * x ** n / math.factorial(n)
return result
# 测试
print(sin(30)) # 输出0.49999999999999994
```
在上面的代码中,我们使用了 math 库中的 radians 函数来将角度转换为弧度。然后,我们使用了一个 while 循环来不断计算泰勒级数的每一项,并将其加入到最终结果中。当一个项的绝对值小于等于 1e-5 时,我们认为该项可以忽略不计了。最后,我们返回最终结果。
需要注意的是,由于计算机只能处理有限的数字精度,因此在实际计算中很难完全避免误差。在上面的代码中,我们使用了 1e-5 作为误差的上限,但实际误差可能会更小或更大。
阅读全文