二分法定义
程序框图
代码
定义函数
def f(x): #定义的函数
y = 2**x+3*x-7
return y
输入误差值,零点所在区间端点
q = float(input('请输入误差范围:')) #误差值
a = float(input('请输入区间左端点:')) #(a,b)为零点所在区间
b = float(input('请输入区间右端点:'))
查看输入的值
print('q={}, a={}, b={}'.format(q, a, b)) #看下输入的3个值
循环求近似值
while abs(a-b)>q:
c = (a+b)/2
if f(a)*f(c)<0: #零点在区间(a,c)内
b = c
elif f(c)==0: # 零点为c
a=c
print('解x ={}'.format(a))
break
else: #零点在区间(c,b)内
a=c
print('解x ={}'.format(a))