小于俄方氛围发 发表于 2017-11-20 10:26:30

关于x*x+x-6,的二分法求解,第三个if语句无法运行

本帖最后由 小于俄方氛围发 于 2017-11-20 11:07 编辑

<g=lambda x:x*x+x-6
a=float(input('请输入a:'))
b=float(input('请输入b:'))
if g(a)*g(b)>0:
    print("函数解不在a,b之间")
if g(a)*g(b)==0:
    if g(a)==0:
       print("解为:",a)
    else:
       print("解为:",b)
else:
    while((b-a)>1.0E-6):
      X=(a+b)/2
      if g(a)*g(X)<0:
            b=X
      if g(a)*g(X)==0:
            print("解为",X)
      else:
            a=X
>
二分法不能正常运行,求助大佬

BngThea 发表于 2017-11-20 11:26:17

本帖最后由 BngThea 于 2017-11-20 11:28 编辑

没有输出结果?感觉用break跳出循环更好一些

小于俄方氛围发 发表于 2017-11-20 11:58:07

问题已解决
页: [1]
查看完整版本: 关于x*x+x-6,的二分法求解,第三个if语句无法运行