<返回更多

python 二分法求方程的根

2021-09-03    余温0c4R
加入收藏
python 二分法求方程的根

 


python 二分法求方程的根

 


python 二分法求方程的根

 

import matplotlib.pyplot as plt

a=3

b=-2

x=(a+b)/2.0 # 中点

def f(x): # 定义方程式

y=x-2**0.5

return(y)

u=max([a,b])

l=min([a,b])

i=0

z=[]

est=[]

# 循环体

while abs(f(x))> 10.0**(-15.0): # 计算精度

if f(u)*f(l)>0: # 判断输入假设是否成立

print('Error: Assumption not holds! ')

break

if f(x)*f(u)>0: # 判断零点落入区间

u=x

x=(x+l)/2.0

else:

l=x

x=(x+u)/2.0

i=i+1

z=z+[abs(x-2**0.5)]

est=est+[abs(a-b)/2**i]

plt.semilogy(z)

plt.semilogy(est)

plt.grid('on')

plt.legend(['simu','theo'])

plt.show()

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>