兩數的最大公因數, 最小公倍數及約分
程式編日期: 2006年6月21日
程式可以計算兩數的最大公因數, 最小公倍數及約分(可以約簡較大的數值)。第一個程式較簡短,但程式需要在BASE模式執行,操作較不便(完結後需後按MODE 1返回正常計算模式),第二個程式較長但在COMP模式執行,容許輸入的數值亦較大。
第一個程式(54 bytes,使用記憶為A、B、C、D及X)
程式需要在 BASE 模式下執行,因此在輸入程式前請先按 Mode Mode 3 進入BASE模式。
Dec: ?→A: ?→B: A→D: B→X: Lbl 0: B→C:
A - A ÷ B × B→B => C→A => Goto 0:
C◢ D ÷ C◢ X ÷ C◢ Ans D
第二個程式 (COMP模式,62 bytes,使用記憶為A、B、C、D及M)
?→A: ?→B: A→D: B→X: Lbl 0: B→C:
A ÷ B - . 5: Fix 0: Rnd: Norm 1:
A - Ans B→B => C→A => Goto 0:
C◢ D ÷ C◢ X ÷ C◢ Ans D
註: 輸入的數值必須為正整數,否則答案錯誤。
例題: 找 370368及617280的最大公因數, 約分及最小公倍數。
按 Prog 1 再按 370368 EXE 617280 EXE (顯示最大公因數為123456)
EXE (顯示分子為 3) EXE (顯示分母為5)
EXE (顯示最小公倍數為1851840)
若果是第一個程式,計算完結後按 MODE 1返回正常計算模式
程式設計小貼士:
使用基數模式編寫程式,要注意數值必需小於2147483647,否則會出現Math ERROR,令程式的運算能力大減,這亦是很多初學者忽略的問題,程式結構雖然相似但差異可以很大,例如可能無法計算出上述例題的結果。