python实现二分法求解方程根
时间: 2024-11-03 08:08:12 浏览: 26
S-N_求解方程_
5星 · 资源好评率100%
在Python中,二分法(也称黄金分割搜索法)通常用于在一给定区间内找到函数零点,即方程的根。二分法假设函数在该区间上连续,并利用函数值的正负交替性质来逐步缩小查找范围。以下是基本的二分法算法步骤:
```python
def binary_search(f, a, b, epsilon=1e-9):
"""
f: 函数对象,接受一个实数x并返回f(x)
a, b: 区间端点,a < b
epsilon: 精度阈值,默认0.00001
"""
while b - a > epsilon:
c = (a + b) / 2
if f(c) == 0:
return c
elif f(a) * f(c) < 0:
# 根据函数值判断,如果左端点乘以中间点小于0,则根在左半段
b = c
else:
# 否则根在右半段
a = c
return (a + b) / 2 # 如果最终区间的长度小于精度阈值,取中点作为近似根
# 示例:求解方程x^2 - 4 = 0 的根
def func(x):
return x**2 - 4
root = binary_search(func, -10, 10)
print("根的近似值:", root)
阅读全文