如何手工计算平方/立方根?
https://calcpad.blog/2022/04/28/how-to-calculate-square-cubic-root-by-hand/
今天,技术让我们的一切变得简单快捷。有时,当我们看到古代的工程奇迹时,我们会想:“他们是如何在没有计算机的情况下设计出来的”?答案是:“凭借知识、灵感和努力”。
然而,几乎不可替代的计算机使我们越来越多的形容词。我们的大脑变得懒惰,我们正在失去一些知识和技能。这就是根的手动计算。它是如此简单和优雅,所以为了古老的数学科学,我将在这里分享它。
平方根
让我们先计算x = √ a。
对两边求平方并将a向左移动,我们得到以下等式:
x 2 − a = 0
这是一个类型为f ( x ) = 0 的方程,我们可以使用牛顿法对其进行数值求解:
- 从初始猜测开始:x 0。最好是接近解,这样就可以使用最近的精确根。
- 通过等式计算根的下一个近似值:x 1 = x 0 − f ( x 0 )/ f ′( x 0 )
- 通过使用先前的结果来估计新结果来继续迭代:
x n+1 = x n − f ( x n )/ f ′( x n )。 - 当您达到所需的精度时停止。
在上面的公式中,f ( x ) 是函数, f ′( x ) 是一阶导数。在我们的例子中:
f ( x ) = x 2 −一个
f ′( x ) = 2 x
如果我们将上述方程代入牛顿迭代公式,我们得到:
x n+1 = x n − ( x n 2 − a )/2 x n
xn + 1 = ( xn + a / xn ) /2
现在,让我们用它来计算 √a = ?,因为a = 5。
我们将从x 0 =√4 = 2的初始猜测开始。
第一次迭代: x 1 = ( x 0 + a / x 0 )/2 = (2 + 5/2)/2 = 2.25
第二次迭代: x 2 = ( x 1 + a / x 1 )/2 = (2.25 + 5/2.25)/2 = 2.2361
第 3 次迭代: x 3 = ( x 2 + a / x 2 )/2= (2.2361 + 5/2.2361)/2 = 2.2361
在第二次迭代之后,我们有 5 个正确的有效数字,这对大多数情况来说已经足够了。
立方根
我们将使用相同的方法,如下所示:
f ( x ) = x 3 −一个
f ′( x ) = 3 x 2
x n+1 = x n − ( x n 3 − a )/3 x n 2
x n+1 = (2 x n + a / x n 2 )/3
让我们看看它如何适用于3 √7。我们的初步猜测是:x 0 = 3 √8 = 2。
第一次迭代: x 1 = (2 x 0 + a / x 0 2 )/3 = (2·2 + 7/2 2 )/3 = 1.9167
第二次迭代: x 2 = (2 x 1 + a / x 1 2 )/3 = (2·1.9167 + 7/1.9167 2 )/3 = 1.9129
第 3 次迭代: x 3 = (2 x 2 + a / x 2 2 )/3 = (2·1.9129 + 7/1.9129 2 )/3 = 1.9129
同样,我们在两次迭代后设法找到了它。我们还可以使用 Calcpad 为此创建一个小程序:
![](https://calcpad.files.wordpress.com/2022/04/d0b8d0b7d0bed0b1d180d0b0d0b6d0b5d0bdd0b8d0b5.png?w=1024)
有趣的是,在 4 次迭代之后,牛顿法找到了 16 个正确的有效数字,这是大多数计算机的极限精度。我们还通过给出相同结果的三种不同方法计算了根。
转载请注明原文链接:https://www.cnblogs.com/itfanr/p/16984259.html
公众号:小弧光黑板报