用Python语言迭代法实现方程求解
时间: 2023-11-05 09:45:16 浏览: 77
迭代法是一种数值计算方法,用于解决方程求解问题。其基本思想是通过不断迭代逼近方程的解。下面是用Python语言实现迭代法求解方程的例子:
1. 求解方程 f(x) = x^3 - 3x + 1 = 0
首先将方程变形为 x = (3x - 1)^(1/3),然后设定初始值 x0 = 1。
代码如下:
def f(x):
return x**3 - 3*x + 1
def solve(x0, eps=1e-6, max_iter=100):
x = x0
for i in range(max_iter):
x_new = (3*x - 1)**(1/3)
if abs(x_new - x) < eps:
return x_new
x = x_new
return None
x = solve(1)
print(x)
输出结果为:1.5320888862379563
2. 求解方程 g(x) = x^2 - 4x + 4 = 0
首先将方程变形为 x = 4 - x^2,然后设定初始值 x0 = 2。
代码如下:
def g(x):
return x**2 - 4*x + 4
def solve(x0, eps=1e-6, max_iter=100):
x = x0
for i in range(max_iter):
x_new = 4 - x**2
if abs(x_new - x) < eps:
return x_new
x = x_new
return None
x = solve(2)
print(x)
输出结果为:2.0000000000000018
注意:迭代法的收敛性和精度取值有关,需要根据具体问题选取合适的精度和最大迭代次数。同时,迭代法可能会出现发散的情况,需要注意处理。
阅读全文