用迭代法解方程的代码
时间: 2024-10-26 11:02:37 浏览: 42
迭代法是一种数值计算技术,常用于求解非线性方程。例如,牛顿迭代法是一个常见的例子,它通过不断逼近函数零点的方式来找到方程的根。以下是一个简单的Python代码示例,使用了牛顿迭代法解一元二次方程:
```python
def newton_raphson(f, df, x0, epsilon=1e-6):
"""
使用牛顿迭代法求解方程 f(x) = 0 的根
:param f: 目标函数
:param df: 函数的一阶导数
:param x0: 初始猜测值
:param epsilon: 迭代精度阈值
:return: 方程的近似解
"""
while True:
x_new = x0 - f(x0) / df(x0)
if abs(x_new - x0) < epsilon: # 如果新旧估计接近,停止迭代
break
x0 = x_new # 更新当前估计值
return x_new
# 示例:解方程 f(x) = x^2 - 2 = 0
def quadratic_function(x):
return x**2 - 2
derivative_quadratic = lambda x: 2 * x # 一阶导数
initial_guess = 1 # 开始的猜测值
solution = newton_raphson(quadratic_function, derivative_quadratic, initial_guess)
print(f"方程 {quadratic_function.__name__} 的解大约为:{solution}")
阅读全文