Python如何使用牛顿法在日志(part2)中计算平方根的步骤详解?
- 内容介绍
- 文章标签
- 相关推荐
本文共计342个文字,预计阅读时间需要2分钟。
学习笔记,仅供参考,有误必纠。计算公式:若我们想计算平方根,可以先任意取一个x的值,然后将x带入以下公式,获得一个更接近的估计值y:y=(x + 1/x) / 2。得到估计值y后,将y赋值给x,再次带入公式,得到更精确的估计值。
学习笔记,仅供参考,有错必纠
计算方程式
如果我们想计算的平方根,可以先任意取一个x的值,再将x带入如下方程,获得一个更好的估计值y:
得到估计值y后,我们将y赋值给x,再将x带入上述方程中,得到新的y值,再将新的y赋值给x,以此类推…最终得到"最好的"估计值y.
python实现
def NewtonSqrt(a, epsilon = 0.0000001):
x = random.uniform(1,100)
print(x)
while True:
y = (x + a/x)/2
print(y)
if abs(y - x) < epsilon:
return y
else:
x = y
a = 4
print('{}的平方根为'.format(a), NewtonSqrt(a))
输出:
33.3422069870677316.731087525208068
8.485081718339828
4.4782486656931155
2.6857274916486946
2.0875409352335583
2.0018355125909686
2.0000008415043222
2.000000000000177
2.0
4的平方根为 2.0
本文共计342个文字,预计阅读时间需要2分钟。
学习笔记,仅供参考,有误必纠。计算公式:若我们想计算平方根,可以先任意取一个x的值,然后将x带入以下公式,获得一个更接近的估计值y:y=(x + 1/x) / 2。得到估计值y后,将y赋值给x,再次带入公式,得到更精确的估计值。
学习笔记,仅供参考,有错必纠
计算方程式
如果我们想计算的平方根,可以先任意取一个x的值,再将x带入如下方程,获得一个更好的估计值y:
得到估计值y后,我们将y赋值给x,再将x带入上述方程中,得到新的y值,再将新的y赋值给x,以此类推…最终得到"最好的"估计值y.
python实现
def NewtonSqrt(a, epsilon = 0.0000001):
x = random.uniform(1,100)
print(x)
while True:
y = (x + a/x)/2
print(y)
if abs(y - x) < epsilon:
return y
else:
x = y
a = 4
print('{}的平方根为'.format(a), NewtonSqrt(a))
输出:
33.3422069870677316.731087525208068
8.485081718339828
4.4782486656931155
2.6857274916486946
2.0875409352335583
2.0018355125909686
2.0000008415043222
2.000000000000177
2.0
4的平方根为 2.0

