N個數的最大公因數 及最小公倍數

程式編日期: 2014年8月22日

程式可以計算兩數的最大公因數。第一個程式較簡短,但程式需要在BASE模式執行,操作較不便(完結後需後按MODE 1返回正常計算模式),第二個程式較長但在COMP模式執行,容許輸入的數值亦較大。

第一個程式(93 bytes,使用記憶為A、B、C、D、X及Y)

程式需要在 BASE 模式下執行,因此在選擇新程式位置後,按 3 選用BASE模式。

Dec: ?→A: A→D: Lbl 0: A→B: ?→A: A→X: While Ans:

B - B ÷ A ×A→C: A→B: C => C→A: WhileEnd: D→B: X→Y:

While Ans: D - D ÷X ×X→C: X→D: C => C→X: WhileEnd:

B÷X ×Y→D: Goto 0

註: 如果是使用fx-50FH,上述程式中的乘號 ×可以省略不輸入,程式長度可節省3 bytes。

 

第二個程式 (COMP模式,98 bytes,使用記憶為A、B、C、D及X)

?→A:  A→D: Lbl 0: A→B: ?→A: A→X: Fix 0: While Ans: 

B - A Rnd( B ÷ A - . 5→C: A→B: C => C→A: WhileEnd:

DX→B: While Ans: D - X Rnd( D ÷ X - . 5→C: X→D:

C => C→X: WhileEnd: Norm 1: B÷X→D: Goto 0

 

註: 輸入的數值必須為正整數,否則答案錯誤。

 

例題1: 找48及60的最大公因數 及最小公倍數。

按 Prog 1 再按 48 EXE 60 EXE (顯示最大公因數為12)

再按 AC RCL D (顯示最小公倍數為240)

 

例題2: 找48、60及42的最大公因數 及最小公倍數。

按 Prog 1 再按 48 EXE 60 EXE 42 (顯示最大公因數為6)

再按 AC RCL D (顯示最小公倍數為1680)

 

註: 若果是第一個程式,計算完結後可直接按 MODE 1終止及返回正常計算模式

 

返回 CASIO fx-50FH、fx-3650P II、fx-50FH II及fx-50F PLUS 程式集

Free Web Hosting