其它方案使用兩個額外數字記憶

編寫日期: 2006年3月30日

之前提及有關兩個額外數字記憶,會存在一個限制,就是要確定那個變數為非零的數值,否則就要加上一個很小的數值,令數值不會出現零 (A ; B + 10x-50 DT),這個方法最大的缺點就是最後的答案原本為零,但卻可能出現一個很小的值,另外雖然加入的數值很細,但對於某些特別程式來說,一樣有可能產生問題,例如: 出現Math ERROR。以下提供一些解決方案。

 

方案一 (SD 模式):

stat clear: ?→A: ?→B: ; A - 1 DT: B DT:

需要使用記憶,只要按出nΣx即可,這個方案同舊有方法所佔用的程式空間一樣,但可以解決0的問題,另外舊有的方法當儲存數後,就很難對數值修改,這個方案的變數就較容易修改,不過亦存有一個缺點,就是當A的絶對值小於10-12時,A的數值會因計數機只得十二位準確度,A會自動變為0,不過對於一般計算,這個方案亦可以接受,要完全解決問題,可以使用方案二。

 

方案二 (SD 模式)

stat clear: ?→A: ?→B: ; -1 DT: A DT: 0 ; B DT:

需要使用記憶,只要按出Σxn即可,這個方案解決了舊有方法及方案一的問題,但要使用多三個位元的程式空間。

 

方案三 (REG Quad 模式)

stat clear: ?→A: ?→B: 3√A , B DT:

需要使用記憶,只要按出Σx3Σy即可,這個方案解決了舊有方法零的問題,並且節省了4個位元的程式空間,不過不能輸入分數 ,否則程式會出現Math ERROR,若果要輸入分數,要用除號代替分號輸入,另外要注意用這個模式儲存數值,會影響A、B、C、D、X及Y記憶的數值,所以只適宜在程式剛開始的時候 進行,限制較多。

 

方案四 (REG Quad 模式)

stat clear: ?→M: M: ?→M: 3√Ans , M DT:

需要使用記憶,只要按出Σx3Σy即可,這個方案解決了方案四分數的問題,但要額用2個位元的程式空間。

 

返回編寫程式小技巧

返回主頁

 

 

Free Web Hosting