微分及定積分(辛卜生)計算(I)
更新日期: 2010年4月30日
注意: E 是按 EXP。
程式 (138 bytes,不包括兩個函數方程式)
ClrMemory: ?→Y: ?→X: If cos-1( Y: Then E 4→Y:
While Ans: X3 - 2X - 1→C: X + Y-1(1 - 3M→X:
M=0 => C→A◢ M≠2M+ => C→D: WhileEnd:
. 5Y(D - C→B◢ Y2(D + C - 2A→C:
Else ?→B: ?→C: C-1(B-X→A:
For 0→D To C: B - DA→X: ln( X:
Ans(3 - cos( πrD ) - (D2=DCM+: Next:
AM÷3: IfEnd
註1: 綠色是計算微分的X3 - 2X - 1是函數方程(變數是X),若果想計算其它方程,只要修改綠色的部份。
註2: 紫色的 ln( x 是 計算定積分(辛卜生法則)的函數方程(變數是X),若果想計算其它函數的積分,只要修改紫色的部份。
註3: 在微分或積分三角函數時,須在函數的角加入弧度(radian)數單位r(按 SHIFT Ans 2),例如: sin(Xr 或 cos((π+X3)r),或在開始 執行程式前時先設定為Rad(按 SHIFT MODE 2 ),否則計算錯誤。
例題1: 計算 f(x) = x3 - 2x - 1 在 x = 1的第一及第二導數的近似值。
按 Prog 1 再按 EXE (不輸入或輸入0代表計算微分)
1 EXE (顯示 f(1)為 -2) EXE (顯示f'(1)為1.000001) EXE (顯示f''(1)為6)
計算完結後,按 RCL A、RCL B及RCL C分別顯示函數值、第一導數及第二導數的近似值。
例題2: 利用辛卜生法則,區間數目為10,計算
按 Prog 1 再按 1 EXE (輸入1代表計算積分)
1 EXE 2 EXE 10 EXE (顯示答案為0.386293403)
注意: 辛卜生法則的區間數目必為正雙數,雙數值越大,準確度越高。
附錄程式(由網友roviury提供)
附錄的三個程式的函數方程較接程式底部,較方便修改函數方程,只要進入程式編輯模式後,按 ↓ 則可直接到達程式最尾的位置,因此可以較快找到要修改函數的位置,但程式速度會較慢小許。
注意: 以下附錄程式中,紫色的函數方程變數是Ans,若果想計算其它函數的積分,只要修改紫色的部份。
附錄程式一 (155/161 bytes,不包括紫色的函數方程,需要按ac離開及保留M,A記憶)
程式需要在 REG Lin 模式下執行,因此在選擇新程式位置後,按 5 1 選用REG Lin模式。
注意: 藍色的英文字為統計模式中的變數(Σx 按 Shift 1 2,Σy 按 Shift 1 → 2,n 按 Shift 1 3)。若果不記存微分答案,綠色程式碼可以不輸入。
?→D: D┘2 nPr 0: ?→X: E- 4(X+(X=0:
If D: Then ?→Y: D-1(Y-X: IfEnd: Ans→Y:
FreqOn: ; 0DT: Goto 9: Lbl 8:
If D: Then Ans(3 - cos(πrn)-(n2=nD DT: D<n => YΣx÷3◢ n:
Else Ans→C: n≦1 => Goto3: Σx→A◢ . 5Y-1(C-Σy→B◢
Y-1 2(Σy+C-2Σx→C◢ Lbl 3: C-nC , nC DT: 2n-3: IfEnd:
Lbl 9: X+YAns: sin(Ansr: Goto 8
附錄程式二(155/161 bytes,不包括紫色的函數方程,程式自然離開)
?→D: D┘2 nPr 0: ?→X: D => ?→Y:
E- 4(X+(X=0→C: D => D-1(Y - X→C: 0→M:
For -1→B To D+2: If D: Then Ans(3 - cos( πrB ) - (B2=BDM+:
B<D => Goto 0: CM÷3→A: Break: IfEnd: Ans→Y:
If B=2: Then A◢ .5C-1(Y - M→B◢ C2 -1(M + Y - 2A→C: Break: IfEnd:
A→M: Y→A: 0: Lbl 0: X+C(B+Ans: sin(Ansr: Next
附錄程式三(149/155 bytes,不包括紫色的函數方程,需要按AC離開)
?→D: D┘2 nPr 0: ?→X: D => ?→Y:
E-4(X+(X=0→C: D => D-1(Y - X→C: 0→M:
For -1→B To D+2:
If D: Then Ans(3 - cos( πrB ) - (B2=BDM+: B=D => CM÷3→A◢ B + 1:
Else Ans→Y: B - 2 => Goto 0: A◢ .5C-1(Y - M→B◢
C2-1(M + Y - 2A→C◢ Lbl 0: A→M: Y→A: B: IfEnd:
X+CAns: sin(Ansr: Next
註: 在微分或積分三角函數時,須在函數的角加入弧度(radian)數單位r(按 SHIFT Ans 2),例如: sin(Ansr 或 cos((π+Ans3)r),或在開始 執行程式前時先設定為Rad(按 SHIFT MODE 2 ),否則計算錯誤。
附錄程式例題1: 計算 f(x) = x3 - 2x - 1 在 x = 1的第一及第二導數的近似值。
先將程式中的綠色函數方程改為 X3 - 2X - 1
再重新執行程式,按 Prog 1 再按 EXE (輸入0代表計算微分)
1 EXE (顯示 f(1)為 -2) EXE (顯示f'(1)為1.00000001) EXE (顯示f''(1)為6)
計算完結後,按 RCL A、RCL B及RCL C分別顯示函數值、第一導數及第二導數的近似值。
附錄程式例題2: 利用辛卜生法則,區間數目為10,計算
先將程式中的綠色函數方程改為 ln( Ans
再重新執行程式, 按 Prog 1 再按 10 EXE (輸入區間數目)
1 EXE 2 EXE (顯示答案為0.386293403)
計算完結後按 AC 終止程式