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