ZeroDivisionError:0.0到负数或复数p

2024-06-28 19:52:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我想找到一个积分((sinx)^8,{x,0,2*Pi}),并试图编写一个简单的程序,没有任何外部模块,如“math”,它计算泰勒级数并将其总结为区间(0,2*Pi),但有一个错误

Traceback (most recent call last):
  File "E:\python\ShAD\sin.py", line 27, in <module>
    sum+=(ser(i*2*3.1415926/k))**8
  File "E:\python\ShAD\sin.py", line 21, in ser
    sin_part+=((-1)**(j-1))*(a**(2j-1))/(fact(2*j-1))
ZeroDivisionError: 0.0 to a negative or complex power

突然发生。我看不出什么东西被零除或者有复数的幂,所有的变量都只有实的正值。 “k”是级数项和区间(0,2*Pi)除项的值。在

^{pr2}$

Tags: 模块inpy程序错误linepimath
1条回答
网友
1楼 · 发布于 2024-06-28 19:52:27

And I just don't see where something is divided by zero or have power of complex number, all variables have only real positive value.

不是真的。关于

for i in range(0,k-1):
    sum+=(ser(i*2*3.1415926/k))**8

你有i=0,所以ser的参数是0,所以a == 0,你有{},它是0的复幂。在

也许你是说a**(2*j-1)?Python使用j作为虚单位,因此2j-1是一个复数。在

相关问题 更多 >