一元二次方程(可顯示已簡化根式實數版)
更新日期: 2008年3月15日
程式參考了網友roviury意見進行修改。
程式可以計算一元二次方程的實根,第二個程式採用了較快計算平方根化簡程式,所以程式較長一點。另外若果輸入數據為整數(或分數)及答案為有理數時,答案會以分數形式表示,建議將計數機預先設定為假分數形式表示(按 SHIFT SETUP → → 2 )。若為無理數,根亦可用根號形式表示。
程式需要在 COMP 模式下執行,因此在選擇新程式位置後,按 1 選用COMP模式。
注意 : 若果不用記存兩根,程式中綠色部份可以不輸入。
第一個程式 (79 / 83 bytes,使用記憶為A, B, C及M,若記存兩根,X及Y亦被使用)
MM-: ?→A: ?→B: ?→C: B2 - 4AC→C:
(√( C ) - B)┘(2A→X◢
-B┘A - Ans→Y◢ - B┘(2A◢ π: Sci 8:
While Ans≠Rnd( AnsM+: √(C÷M: WhileEnd:
Norm 1: B┘(2A◢ M
第二個程式 (101 / 105 bytes,使用記憶為A, B, C及M,若記存兩根,X及Y亦被使用)
?→A: ?→B: ?→C: B2 - 4AC→C:
(√( C ) - B)┘(2A→X◢ -B┘A - Ans→Y◢ - B┘(2A◢
1: Fix 0: While Ans: Rnd(√( C ÷ Ans ) - . 5→B: C ÷ B2→M:
Ans - Rnd(Ans => Rnd( M + . 5: WhileEnd: Norm 1: B┘(2A◢ M
例題1: 解 21x2 - 11x - 2 = 0
按 Prog 1 再按 21 EXE - 11 EXE - 2 EXE (顯示第一個根為2/3)
EXE (顯示第二個根為 -1/7)
(注意: 若果無需要以根式表示或根為整數/分數(有理數),可以直接按AC終止程式)
例題2: 解 x2 - 8x + 3 = 0
按 Prog 1 再按 1 EXE - 8 EXE 3 EXE (顯示第一個根為7.60555)
EXE (顯示第二個根為 0.394449)
EXE (顯示4)
EXE (顯示1)
EXE (顯示13)
所以方程的根為 4 ±1√13
註1: 若兩根為整數或分數,表示為有理數,亦即沒有必要計算根式表示式,請直接AC終止程式。
註2: 第一個程式輸入的係數必須為整數及有限小數,否則計算根式表示式的結果可能不成立。
註3: 第二個程式輸入的係數必須為整數,否則計算根式表示式的結果可能不成立。
註4: 第二個程式使用了較快計算平方根化簡程式,能夠有效處理各種不同情況下整數平方根化簡。
註5: 程式計算完結後,可以按 RCL C顯示判別式的值。