CASIO fx-3650P 假分數預設顯示問題
編寫日期: 2008年1月5日
Casio fx-3650P及fx-3950P已發現不少分數功能出現問題,除了最早期某些分數計算無法顯示外(Casio 已回收有問題舊計算機),亦有分數正負號計算錯誤及小數轉換分數問題,最新還發現當使用預設假分數顯示時,執行程式會出現異常的Math ERROR問題,這個問題是由WebCal論壇的網友 abcsonson 首先發現,他正確輸入程式碼,執行程式卻不合理地出現Math ERROR,我經過研究後,發現了與分數運算及預設假分數顯示有關,當選用了帶分數顯示後,問題就有可以解決,請參看以下的例子。
1. 先選用假分數顯示(必要條件),按 MODE MODE MODE MODE MODE MODE 1 2。
2. 輸入以下程式碼的程式:
Mem clear: ?→A: - 4┘9 M-: √M + A
3. 執行上述程式及輸入3作為A的數值,亦即是按 Prog 1 再按 3 EXE ,這時不合理地顯示 Math ERROR,再按 REPLAY 算右鍵 → ,浮標在程式最後位置出現,表示出現問題語句為最後的 √M + A,再按 ON 離開程式編輯模式(Edit Mode),嘗試人手輸入問題算式√M + A計算,即是按 √ ALPHA M + ALPHA A EXE 卻能得出正確答案 11/3,很明顯這個問題只發生在程式的運算,一般人手輸入計算沒有問題。
4. 重複執行程式,嘗試輸入不同的A值,發現有某些A值會出現Math ERROR,例如輸入A值為 3, 4, 3/2, 11/3等等,但某些A值卻沒有問題,例如輸入的A值為 0, 1, 2, 1/7及15/4,能夠正確顯示答案 2/3, 5/3, 8/3, 17/21及53/12,另外有趣的是如果輸入小數的A值,就完全沒有問題,看來問題只發生在分數運算。
5. 若果將步驟2中最後的程式碼 + A 刪除,亦即是程式變為 Mem clear: ?→A: - 4┘9 M-: √M ,那麼無論輸入任何A值亦不會出現Math ERROR,由此看來與 + A 這個加的運算有關,我亦嘗試過減(√M-A)、乘(A√M)及除(√M÷7)的情況,亦有相似的情況出現(Math ERROR)。
6. 若果將步驟2程式中的平方根(√)改用N次方根(x√),即程式變為:Mem clear: ?→A: - 4┘9 M-: 2x√M + A,那麼無論輸入任何A值亦不會出現Math ERROR,但答案會以小數答案形式顯示,我相信由於fx-3650P的N次方根不支援分數顯示有關,計算N次方根會先得出小數,所以就沒有問題了,相反若果將平方根(√)改為支援分數顯示的N次方(^(1┘2)),即程式變為: Mem clear: ?→A: - 4┘9 M-: M^(1┘2) + A,重複測試的結果與步驟4中的結果完全相同。另外我亦測試過其它支援分數顯示的功能(平方x2及立方x3),初步相信應該沒有Math ERROR的問題。
7. 若果將步驟2程式收為 Mem clear: ?→A: - 4┘9 M-: √M + A: Ans,測試的結果基本上是相同,不同的是當Math ERROR時,再按 REPLAY 算右鍵 → ,浮標在程式最後位置出現,表示出現問題語句不是 √M + A,而是最後語句 Ans,有趣的是問題由語句√M + A輸移至Ans語句。若果再將步驟2程式收為 Mem clear: ?→A: - 4┘9 M-: √M + A: Ans + 0,那麼無論輸入任何A值亦不會出現Math ERROR,更有趣的是將Ans改為Ans+0後,問題竟然消失了,看來問題出現的條件並非簡單的條件。
8. 若果將步驟2程式中的 - 4┘9改為其它負數分數,而√M又能夠以分數形式顯示,例如將 - 4┘9 改為 - 1┘4,執行程式亦有相似的問題出現,但若√M的值為整數或無理數,那麼就沒有Math ERROR的問題了。
我認為fx-3650P有這種錯誤絶對不能接受,會令執行程式的可靠性大大降低,我亦測試過有相似功能的Truly SC-185及Casio fx-50F PLUS,兩部計算機沒有這方面的問題。由於現時知道問題只在預定假分數顯示設定之下,執行程式才有機會出現上述問題,雖然一般非程式的運算沒有受到影響及預定假分數顯示設定會較為方便,但基於考慮計算可靠性的問題,我會建議大家改為使用帶分數預定顯示的設定(按 MODE MODE MODE MODE MODE MODE 1 1),以減低潛在可能的問題。
各位網友若對上述內容有任何意見、補充或疑問,歡迎到WebCal論壇留言討論。
返回 fx-3650P及SC-185程式集