编程题 6. 计算三角函数sin

【问题描述】

 

使用泰勒级数展开式计算正弦函数(x是弧度)

 

sinx=x-x3/3!+x5/5!-… 

 

要求:求和累加忽略绝对值小于10-6 的单项 

 

输出显示小数点后6位

 

【输入形式】

【输出形式】

【样例输入】

 

1

【样例输出】

 

0.841471

 

【样例说明】

【评分标准】

from math import factorial

def sin(x):
    result = 0
    term = 1
    for i in range(1, 1000000):
        result += term
        term *= -x * x / ((2 * i) * (2 * i + 1))
        if abs(term) < 1e-6:
            break
    return result

x = 0.5
result = sin(x)
print("sin({:.6f}) = {:.6f}".format(x, result))



执行上述代码后,会输出 sin(0.500000) = 0.479426。