python 用泰勒公式近似计算sinx的值 求解代码中哪里出现了错误

python 用泰勒公式近似计算sinx的值 求解代码中哪里出现了错误 计算式不清楚是哪里出现了问题

img

img

img


import math

def fun(x):
    s , n , z , flag = 0, 1,x, 1
    while abs(z) >= 10 ** (-6):
        z =  flag * pow(x, n) / math.factorial(n)
        s += z
        n += 2
        flag *= -1
    return s

x = float(input(">>>"))
print(fun(x))

(-1)用括号括起来,试试