看到這個題目,您或許會有兩個想法:
1.按按計算器就知道了,比如:√2=2^0.5=1.4142135623730950488016887242097……;
2.是不是要介紹“手算開平方”?實在抱歉,曾經的我也不是個十分專心的學生,竟是忘了 。當然 , 百度一下,再度鉆研貼文也是可以的,不過興趣待定 。

文章插圖
其實,本文想說的還就是和想法1有關 。您有沒有想過:計算器又是怎樣計算的呢?
我不確定計算器背后的算法一定是什么,但我確定的知道一種比較可行的方法:利用迭代函數迭代計算n次方根 。今天就先來看看“二次方根”或“平方根”的計算方法 。
二次方根迭代函數如下:
f(x)=x/2+C/(2*x)
其中:
x^2=C
或
C^0.5=x
即:函數中的C是被開方數,x是求解目標“二次方根” 。
(備注:呃,請不要問我這個迭代函數是怎么來的,據說和“泰勒級數”有關,這得從“數學分析”中尋找答案,汗……)
什么是“迭代”?
①猜測一個初始值x0,比如:x0=1(不會猜 , 就選1);
②計算函數值x1,其中:x1=f(x0),即把x0代入迭代函數求值;
③迭代:x0=x1;
④反復循環②③兩步直至符合指定的精度要求 。
可見:迭代就是把上一次輸出的結果作為下一次輸入的結果并反復執行 。
這樣做神奇嗎?來讓我們試試 。
例1.求根號2的值 。
①x0=1
②x1= x/2+C/(2*x)=1/2+2/(2*1)=1.5
③x0=x1=1.5
④x1= x/2+C/(2*x)=1.5/2+2/(2*1.5)≈1.416666667
⑤x0=x1=1.416666667
⑥x1= x/2+C/(2*x)=1.416666667/2+2/(2*1.416666667)≈1.414215686
⑦x0=x1=1.414215686
⑧x1= x/2+C/(2*x)=1.414215686/2+2/(2*1.414215686)≈1.414213562
⑨……
只需迭代4次就可以得到9位小數精度 , 足夠應付很多計算需要了 。

文章插圖
例2.求1234567的平方根 。
呵呵 , 手算基本是不可能的,小數位數多,會讓人抓狂的,下面是電子表格計算的數據,供參考:
第1次 1
第2次 617284
第3次 308643
第4次 154323.5
第5次 77165.74993
第6次 38590.87441
第7次 19311.43279
第8次 9687.68106
第9次 4907.558926
第10次 2579.561651
第11次 1529.078654
第12次 1168.235696
第13次 1112.507369
【初一下計算平方根的訣竅 數學符號平方根怎么打】 第14次 1111.111582
第15次 1111.110706
……
迭代了15次后,達到了一般穩定精度要求 。不過 , 如果初始值不是1,而是與準確值更接近一些,比如1000,則迭代次數會大幅下降,如下:
第1次 1000
第2次 1117.2835
第3次 1111.127757
第4次 1111.110706
……
僅需4次 。初值的選擇是很重要的,好的初值估計,算是核心技術 。
本文算是幫您打開了一扇門,但同時,您會發現更多關上的門,比如:三次方根呢?四次、五次、小數次、無理數次……方根呢?比如:被開方數是小數、負數、無理數……呢?呵呵,這會讓我們頭很大的 。

文章插圖
女兒的作品
