#power series of sine function
def main():
M=float(input('M: ')) #angle in degree
X=pi_value()*M/180 #angle in radian
print(sine(X))
#factorial function
def fac(N):
if N==0:
Num=1
else:
Num=1
for i in range(1,N+1):
Num*=(i)
i+=1
return Num
#pi function
def pi_value():
pivalue=3.141592653589793
return pivalue
def sine(X):
k=0
sine=0
term=((-1)**k*X**(2*k+1))/fac(2*k+1)
while abs(sine)<1*10**(-8):
sine+=term
k+=1
term=((-1)**k*X**(2*k+1))/fac(2*k+1)
return sine
main()
我一直在研究正弦函数的幂级数展开Python。为了由于某种原因,这个代码不起作用。如果有人能给我点建议,我会很感激的。谢谢(请注意,我不应该使用任何数学库函数)
当我输入角度M=30度时,这就是我得到的输出。在
^{pr2}$
当我应该得到一些东西的时候M: 60
1.0471975511965976
对于60度角,输出完全错误。在