一元二次方程特別版

程式編寫日期: 2008年1月20日

第一版程式輸入係數為整數或分數準確度較高,若果輸入小數係數,準確度有可能會減少一點,所以求得的小數答案(循環小數),有可能不能轉化為分數,而特別版可以解決這方面的問題。

 

註: 若果想測試你的一元二次方程程式的準確度是否很高,可以嘗試輸入以下有小數係數的一元二次方程,看看可否將0.333333333的答案轉化為(按 a b/c)分數 1/3 .

測試方程: 0.03x2 - 3.01x + 1 = 0

 

注意:若果你不用計複數根,為被免混淆及使用方便,建議在Comp Mode之下輸入程式(先按Mode 1)。若要計複數根,先進入複數模式(先按Mode 2),然後輸入程式,當執行程式時,程式會自動進入複數模式。

 

注意 : 若果不需要記存兩根,程式中綠色部份可以不輸入。

第一個程式 (47 / 43 bytes,可求兩根及判別式)

?→A: ?→B: ?→C: B2 - 4AC→C:

-1÷(2A→D: D(B - √( C→A◢ D(B + √( C→B

 

第二個程式(分數版) (47 /43 bytes,可求兩根及判別式)

?→A: ?→B: ?→C: B2 - 4AC→C:

-1┘(2A→D: D(B - √( C→A◢ D(B + √( C→B

 

例題1: 解 21x2 - 11x - 2 = 0

第一個程式的按法:

按 Prog 1  再按 21 EXE - 11 EXE - 2 EXE

(顯示第一個根為0.666666666,若再按 a b/c,顯示 2/3) EXE

(顯示第二個根為 -0.142857142,若再按 a b/c,顯示- 1/7)

第二個程式的按法:

按 Prog 1  再按 21 EXE - 11 EXE - 2 EXE (顯示第一個根為2/3)

EXE (顯示第二個根為 -1/7)

程式執行完,按 RCL C顯示判別式的值為289。

 

例題2: 解 x2 + 6x + 25 = 0

假設程式是在複數模式中輸入

按 Prog 1  再按 1 EXE 6 EXE 25 EXE ( 此時計算機右上角出現R<=>I,表示為複數解)

(顯示第一個根的實數部為-3) 再按 Shift Re<=>Im (顯示第一個根虛數部為 4)

EXE (顯示第二個根的實數部為-3) 再按 Shift Re<=>Im (顯示第二個根虛數部為 - 4)

所以方程的解為 x = -3 ± 4i

程式執行完,按 RCL C顯示判別式的值為 - 64。

註: 第一個及第二個程式的兩根及判別式分別記存在記憶A,B及C.

 

第三個程式 (55 / 51 bytes,可求頂點,兩根及判別式)

?→A: ?→B: ?→C: B2 - 4AC→C:

- 1÷( 2A→D: BD◢ CD÷2◢

D(B - √( C→A◢ D(B + √( C→B

 

第四個程式(分數版) (55 / 51 bytes,可求頂點,兩根及判別式)

?→A: ?→B: ?→C: B2 - 4AC→C:

- 1┘(2A→D: BD◢ CD┘2◢

D(B - √( C→A◢ D(B + √( C→B

 

例題3: 解 21x2 - 11x - 2 = 0

第三個程式的按法:

按 Prog 1  再按 21 EXE - 11 EXE - 2 EXE

(顯示頂點的x座標為0.261904761,若要顯示分數 再按 a b/c,顯示11/42)  EXE

(顯示頂點的y座標或二次函數的極小值為 3.44047619,若再按 a b/c,顯示-289/84)

EXE (顯示第一個根為0.666666666,若再按 a b/c,顯示 2/3)

EXE (顯示第二個根為 -0.142857142,若再按 a b/c,顯示- 1/7)

第四個程式的按法:

按 Prog 1  再按 21 EXE - 11 EXE - 2 EXE (顯示頂點的x座標為11/42)

EXE (顯示頂點的y座標或二次函數的極小值為 -289/84)

EXE (顯示第一個根為2/3)

EXE (顯示第二個根為 -1/7)

程式執行完,按 RCL C顯示判別式的值為289。

註: 第三個及第四個程式的兩根及判別式分別記存在記憶A,B及C.

 

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

Free Web Hosting