2023年10月26日 星期四

快速估算根號近似值

http://4rdp.blogspot.com/2023/10/blog-post_21.html



這裡舉一個根號速算的例子
$\sqrt{93}=9.64365076\cdots$
我們套用下列步驟計算

一、找一個接近原數的平方數
$81=9^{2}=a^{2}$
$\Rightarrow a=9$

二、計算原數與平方數之間的差值
$b=93-81=12$

三、代公式 $\sqrt{x}=a+\frac{b}{2a}$
$\sqrt{93}\approx 9+\frac{12}{2\times 9} =9.6 $

四、可重複迭代步驟一到三,求更精確數值
$92.16=9.6^{2}=a^{2}$
$b=93-92.16=0.84$
$\sqrt{93}\approx 9.6+\frac{0.84}{2\times 9.6}= 9.64375\cdots$


其計算的原理

$x=a^{2}+b$
$x-a^{2}=b$
$(\sqrt{x}+a)(\sqrt{x}-a)=b$
$\sqrt{x}-a=\frac{b}{\sqrt{x}+a}$
$\sqrt{x}=a+\frac{b}{\sqrt{x}+a}$
$\sqrt{x}=a+\frac{b}{a+\sqrt{x}}$

$\sqrt{x}=a+\frac{b}{a+a+\frac{b}{a+a+\frac{b}{\cdots}}}$
$\sqrt{x}=a+\frac{b}{2a+\frac{b}{2a+\frac{b}{\cdots}}}$

$\Rightarrow \sqrt{x}=a+\frac{b}{2a+\cdots}$

2008 年我有一篇開根號求解,講述兩種不同方法解根號,本文算是第三種方法。

6 則留言:

  1. sqare root 計算常被用到。另外一個也常被提到的是: https://zh.wikipedia.org/wiki/%E5%B9%B3%E6%96%B9%E6%A0%B9%E5%80%92%E6%95%B0%E9%80%9F%E7%AE%97%E6%B3%95 有趣的是: 到底誰發明的,卻是不太可考...

    回覆刪除
    回覆
    1. 謝謝你補充這個有趣的根號速算程式碼,看到神奇數值,不可思議,真是神來一筆。

      刪除
  2. 回覆
    1. 函數求值常用近似收斂方式,這個求開根號還蠻簡單的。

      刪除
  3. √7:
    2^2=4
    3^2=9
    所以√7會落在2~3之間,得a=2。
    b=7-4=3
    √7=a+(b/2a)=2+(3/4)=2.75
    但實際√7約2.645
    小數點第1位還是有差。

    回覆刪除
    回覆
    1. 把老師的 2.75 再迭代入原式可以獲得更精確數值
      (2.75)² = 7.5625
      a = 2.75
      b = 7 - 7.5625 = -0.5625
      √7 = a+(b/2a) = 2.75 + (-0.5625/5.5) = 2.6477...
      這樣可以準到小數第二位

      刪除