N次方根化簡(II)(分數版)
程式新版
簡介及程式特點: 程式可以化簡一個整數的平方根(將 n√(a/b)化簡為 (c/d) n√e,其中 a, b, c, d, e為正整數)。
第一個程式較為簡短,當答案平方根c值細小時速度很快(參看網頁尾附錄中第3項),但c值大時速度變得相當慢(參看附錄中第2項),較特別是這個版本亦可以計算非循小數平方根化簡問題。
第二個程式平均速度較第一個程式快,特別是答案為(c/d) n√e,e值大時速度比第一個程式快很多,但缺點是c值很大及e值細小時,速度頗慢(參看網頁尾附錄中第3項)。
第三個程式速度比第二個程式更快,克服了傳統這類平方根化簡程式的問題(同時改善了第一及第二程式在某些情況下特別慢的問題)。
程式編寫日期: 2008年9月19日
第一個程式 (58 bytes,使用記憶A、B、C、D及M)
MM-: ?→C: ?→A: ?→D: AD^(C - 1→A: Sci 5:
Lbl 0: 1M+: C x√ ( A÷M→ B: Rnd: B - Ans => Goto 0:
Norm 1: B┘D◢ M
第二個程式(70 bytes,使用記憶A、B、C、D及X)
?→D: ?→A: ?→X: AX^(D - 1→A: D x√ A - . 5:
Fix 0: Rnd: Ans→B: Lbl 0: A ÷ Ans^D→C: Rnd:
C - Ans => B - 1→B => Goto 0: Norm 1: B┘X◢ C
第三個程式(77 bytes,使用記憶A、B、C、D及X)
?→D: ?→A: ?→X: AX^(D - 1→A: 1: Fix 0: Lbl 0:
Rnd: D x√ ( A ÷Ans ) - . 5: Rnd: Ans→B: A ÷ B^D→C:
Rnd: C - Ans => C + . 5 => Goto 0: Norm 1: B┘X◢ C
註1: 注意若在程式執行中(顯示空白時)按AC終止程式,計數機會保持在小數零位(Fix 0)或有效數字5位(Sci 5)的設定。
註2: 注意除第一個程式方根數可輸入非循環小數外,其它程式輸入的數據為整數,否則程式計算不成立。
例題1: 化簡 3√(8/9)
按 Prog 1 再按 3 EXE 8 EXE 9 EXE (顯示 2/3) EXE (顯示 3)
所以 3√(8/9) = (2/3) 3√3
例題2: 化簡 3√40
按 Prog 1 再按 3 EXE 40 EXE 1 EXE (顯示 2) EXE (顯示 5)
所以 3√40 = 2 3√5
例題3: 化簡 √(8/27)
按 Prog 1 再按 2 EXE 8 EXE 27 EXE (顯示 2/9) EXE (顯示 6)
所以 √(8/27) = (2/9) √6
例題4: 化簡 √0.75 (只適用於第一個程式)>
按 Prog 1 再按 2 EXE 0.75 EXE 1 EXE (顯示 0.5) EXE (顯示 3)
所以 √0.75 = 0.5√3
附錄: 三個程式速度測試比較表 (以fx-3650P進行測試)
編號 | 計算項目 | 第一個程式 | 第二個程式 | 第三個程式 |
1. | √88=2√22 | 約5秒 | 約2秒 | 約2秒 |
2. | √39988=2√9997 | 約2760秒 | 約56秒 | 約32秒 |
3. | √70000=100√7 | 約2秒 | 約48秒 | 約3秒 |
註3: 第1項測試為一般常見較簡單平方根化簡,第2及3項則測試計算大平根化簡情況,分為兩個情況,情況一為答案的平方根數值大及情況二答案的整數部份數值大。