二分法 python
时间: 2023-11-22 13:50:40 浏览: 108
Python二分法
以下是一个使用二分法求解方程根的Python代码示例:
```python
import numpy as np
def f(x):
y = x**3 - x - 1
return y
def main():
a = float(input("a="))
b = float(input("b="))
e = 0.001 # 精度要求
while f(a) * f(b) > 0:
print("请重新输入a、b的值")
a = float(input("a="))
b = float(input("b="))
x0 = (a + b) / 2
while np.abs(f(x0) - 0) > e:
if f(a) * f(x0) < 0:
a = a
b = x0
else:
a = x0
b = b
x0 = (a + b) / 2
print(x0) # 方程的解
print(f(x0)) # 验证解的正确性
if __name__ == '__main__':
main()
```
这段代码使用了二分法来求解方程根。首先,用户需要输入a和b的值,这两个值用来确定方程的区间。然后,代码会判断f(a)和f(b)的符号,如果它们的乘积大于0,则需要重新输入a和b的值。接下来,代码会计算区间的中点x0,并计算f(x0)的值。如果f(x0)的绝对值大于给定的精度e,则根据f(a)和f(x0)的符号来更新区间的值。最后,代码会输出方程的解x0和f(x0)的值。
阅读全文