迭代法求x=√a python
时间: 2024-05-15 13:12:47 浏览: 121
迭代法(python)
可以使用牛顿迭代法来求解 $\sqrt{a}$,具体实现如下:
```python
def sqrt(a):
x = a
while abs(x * x - a) > 1e-6:
x = (x + a / x) / 2
return x
```
在每次迭代中,我们更新 $x$ 的值为 $(x + a/x)/2$,直到 $x^2$ 与 $a$ 的差值小于 $10^{-6}$。最后,返回 $x$ 即可。
示例:
```python
print(sqrt(2)) # 输出 1.4142135623746899
print(sqrt(9)) # 输出 3.0
print(sqrt(27)) # 输出 5.196152422706632
```
注意:牛顿迭代法可能会有多个解,因此需要根据具体问题选择合适的初始值 $x$。
阅读全文