外點至二次曲線的切線

程式參考了網友roviury意見進行修改。

程式會計算從一個外點至二次曲線的兩條個切線 。(二次曲線方程式為 Ax2 + Bxy + Cy2 + Dx + Ey + F = 0)。另外輸入數據為整數及答案為有理數時,答案會以分數形式表示,建議將計數機預先設定為假分數形式表示(按 SHIFT SETUP → → 2 )。若果不需要記存答案,程式中綠色部份可以不輸入。

程式需要在 REG Lin 模式下執行,因此在選擇新程式位置後,按 5 1 選用REG Lin模式。

注意: 藍色的英文字為統計模式中的變數(Σx 按 Shift 1 2,Σx2 按 Shift 1 1,Σy 按 Shift 1 → 2,Σxy 按 Shift 1 → 3,Σy2 按 Shift 1 → 1)。

程式 (174 / 182 bytes)

ClrStat: ?→X: ?→Y: X , Y DT: ?→M: ?→C: ?→D:

?→B: ?→X: (B+CΣy)2 - 4M(XΣy + DΣy2→A:

2(CBΣx - BX - 2MXΣx +Σy(CX + C2 Σx - 2D 

(2MΣx+B→Y: B: ?→B: (X + CΣx)2 - 4D(AnsΣx

+ MΣx2 + B→X: Y + 4CB→Y: A - 4MB:

If X: Then (√( Y2 - 4AnsX) + Y) ┘( 2X→A◢ Σy - AΣx→B

Y┘X - A→C◢ Else Ans┘Y→C◢ IfEnd: Σy - AnsΣx→D

 

例題1: 求從外點(0,2)至圓x2 + y2 - 2x + 2y - 3 = 0的兩條切線的斜率。

按 Prog 1 再按 0 EXE 2 EXE1 EXE 0 EXE 1 EXE - 2 EXE 2 EXE - 3 EXE (顯示切線斜率為2)

EXE (顯示切線y截距為 2) EXE (顯示 另一切線斜率為 -1/2) EXE (顯示另一切線y截距為 2)

 

例題2: 求圓x2 + y2 + 2x + 8y + 12 = 0上一點(-3,-3)的切線斜率。

按 Prog 1 再按 -3 EXE -3 EXE 1 EXE 0 EXE 1 EXE 2 EXE 8 EXE 12 EXE (顯示切線斜率為2)

EXE (顯示切線y截距為 3) EXE (顯示切線斜率為2) EXE (顯示切線y截距為 3)

兩組解答相同表示這點在圓之上

 

若果包含綠色程式碼,程式執行完成後,可按 RCL A及RCL B顯示切線的斜率及y-截距,按RCL C及RCL D顯示另一切線的斜率及y-截距。

註1: 若果程式只顯示一組解答表示另一切線為垂直線。

註2: 若沒有切線存在(例如: 點在橢圓形之內及點在雙曲線的兩個外側位置等),程式會顯示Math ERROR。

 

返回 CASIO fx-50FH 及 fx-50F PLUS 程式集

 

 



程式舊版

程式編寫日期: 2008年2月28日

程式會計算從一個外點至二次曲線的兩條個切線 。(二次曲線方程式為 Ax2 + Bxy + Cy2 + Dx + Ey + F = 0)。另外輸入數據為整數及答案為有理數時,答案會以分數形式表示,建議將計數機預先設定為假分數形式表示(按 SHIFT SETUP → → 2 )。若果不需要記存答案,程式中綠色部份可以不輸入。

程式需要在 REG Lin 模式下執行,因此在選擇新程式位置後,按 5 1 選用REG Lin模式。

注意: 藍色的英文字為統計模式中的變數(Σx 按 Shift 1 2,Σx2 按 Shift 1 1,Σy 按 Shift 1 → 2,Σy2 按 Shift 1 → 1)。

程式 (194 / 202 bytes)

ClrStat: ?→X: ?→Y: X , Y DT: ?→M: ?→C: ?→D:

?→B: ?→X: B2 + 2CBΣy - 4MXΣy + C2 Σy2 - 4MDΣy2→A:

2CXΣy - 8MD Σx Σy + 2C2 Σx Σy - 4MXΣx + 2CBΣx - 2BX

- 4DBΣy→Y: X2 + 2CXΣx - 4DBΣx + C2Σx2 - 4MDΣx2→X:

? →B: X - 4DB→X: Y + 4CB→Y: A - 4MB→A:

If X: Then (√( Y2 - 4AX) + Y) ┘( 2X→A◢ Σy - AΣx→B

Y┘X - A→C◢ Else A┘Y→C◢ IfEnd:  Σy - AnsΣx→D

 

Free Web Hosting