python用牛顿迭代法求平方根_如何用牛顿法求一个数的平方根
时间: 2024-02-25 17:54:37 浏览: 112
用牛顿迭代法计算整数的平方根到任意精度
4星 · 用户满意度95%
牛顿迭代法是一种求解方程的数值方法,可以用来求一个数的平方根。对于求解方程 $f(x)=0$,牛顿迭代法的基本思想是:从初始估计值 $x_0$ 开始,通过不断迭代求解 $x_{n+1}=x_n-\frac{f(x_n)}{f'(x_n)}$,直到满足精度要求或迭代次数达到预设值为止。
对于求一个数 $a$ 的平方根,我们可以将其转化为求解 $f(x)=x^2-a=0$ 的根。根据牛顿迭代法的基本公式,可以得到求解平方根的迭代公式为:
$x_{n+1}=\frac{1}{2}(x_n+\frac{a}{x_n})$
其中,$x_0$ 可以取任意正实数,并且随着迭代次数的增加,$x_n$ 会越来越接近 $a$ 的平方根。
下面是 Python 代码示例:
```
def sqrt_newton(a, epsilon=1e-6):
x = a
while abs(x * x - a) > epsilon:
x = 0.5 * (x + a / x)
return x
```
其中,`a` 表示要求平方根的数,`epsilon` 表示迭代的精度要求,函数返回求得的平方根 `x`。
阅读全文