Re: [其他] 數值分析 - 非整數次方 (幕次)
※ 引述《EdisonX (閉上眼的魚)》之銘言:
: 大家好,我想知道一些非整數次方的算法,不用計算機,用手算即可,
: 只考慮實數係即可,可假設容許誤差為 10 ** -3。
: 我找過一些資料了,目前比較有用的想法,以下面例子帶出 (恕數學不好)。
: 2.5 ** 3.12
: = 2.5 ** (3.0 + 0.12)
: = (2.5 ** 3.0) * (2.5 ** 0.12)
: = (2.5 ** 3.0) * (2.5 ** (12 / 100) )
: = (2.5 ** 3.0) * ( (2.5 ** 12) ** 0.01 )
: 這樣是先化成 (整數 + 小數),再將小數化成分數去計算,
: 但還是卡在 2.5 ** 0.01 (開 100 次根) 該如何算?
: 若真如此計算,速度略嫌慢,且在小數化為分數再計算時,
: 又怕誤差更大了。
: 不知各位對於這問題有什麼想法?謝謝大家。
2.5^0.12 按計算機的結果為 1.116227714
計算方式為:
估計一:
2.5^0.12 ≒ (1.5*1.66667)^0.12 = (1.5^0.12) * (1.66667^0.12)
而 1.5^0.12 ≒ 1+0.5*0.12 = 1.006
1.66667^0.12 ≒ 1+0.66667*0.12 ≒ 1.0800004
故 2.5^0.12 ≒ 1.006*1.0800004 = 1.08648 誤差2.7%
估計二:
2.5^0.12 ≒ {(1.2^5)*1.00469}^0.12 = (1.2^0.6) * (1.00469^0.12)
而 1.2^0.6 ≒ 1+0.2*0.6 = 1.12
1.00469^0.12 ≒ 1+0.00469*0.12 = 1.0005628
故 2.5^0.12 ≒1.12*1.0005628=1.12063 誤差0.4%
若 a、b 趨近於 0 時則有:
b
(1+a) ≒ 1 + ab
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.230.130.243
→
09/03 06:40, , 1F
09/03 06:40, 1F
→
09/03 11:15, , 2F
09/03 11:15, 2F
→
09/03 17:13, , 3F
09/03 17:13, 3F
討論串 (同標題文章)