本次使用二分法求解一个简单的方程的根
方程如下
方程的定义域为[0,1]
编程求解
```
def bisect(f,a,b,tol):
if f(a)*f(b)>=0:
print("出错了")
fa=f(a)
fb=f(b)
while (b-a)/2>tol:
c=(a+b)/2
fc=f(c)
if fc==0:
break
if f(c)*f(a)<0:
b,fb=c,fc
else:
a,fa=c,fc
return (a+b)/2
f=lambda x: x**3+x-1
xc=bisect(f,0,1,0.000005)
print(xc)
```
## 数值结果
程序算出的最终结果是 0.6823310852050781
网友评论