【发布时间】:2016-07-29 20:47:39
【问题描述】:
我正在尝试集成这个功能:x^4 - 2x + 1 from 0 to 2
我写了这个程序:
def f(x):
return (x**4)-(2*x)+1
N=10
a=0.0
b=2.0
h=(b-a)/N
s=f(a)+f(b)
for k in range(1,N/2):
s+=4*f(a+(2*k-1)*h)
for k in range(1,N/(2-1)):
s1 +=f(a+(2*k*h)
M=(s)+(2*s1)
print((1/3.0)*h)*(3)
但是我收到了这个错误:
File "<ipython-input-29-6107592420b6>", line 17
M=(s)+(2*s1):
^
SyntaxError: invalid syntax
我尝试以不同的形式编写它,但我总是在M 中收到错误
【问题讨论】:
-
顺便说一句,您的辛普森规则公式不太正确。我在这里的旧答案可能会有所帮助stackoverflow.com/a/33715116/4014959
-
您可能需要在循环中使用
s1=0之前声明它。或使用s += 2*f(...)。