半分法
程式編寫日期: 2008年1月4日
第一個程式 (最少33 bytes,使用記憶為A,B,C及X)
?→X: X3 - 2X - 1→C: C>0 => X→A: 0>C => X→B:
2-1( A + B→X: C
第二個程式 (最少58 bytes,可顯示根的範圍。)
ClrMemory: Lbl 0: ?→X: X3 - 2X - 1→C◢ CM≧0 => X→A:
0>CM => X→B: M=0 => C→M: Ans => Goto 0: A◢ B◢
2-1( A + B→X: Goto 0
第一個程式及第二個程式更簡短版本 (31 bytes 及 35 bytes)
註1: 綠色的X3 - 2X - 1是函數方程(變數是X),若果想計算其它 方程,只要修改綠色的部份。
註2: 使用第二個程式,若果想保留一些記憶用作儲存臨時數據,可將程式中"ClrMemory"改為"MM-",而程式所使用記憶為A,B,C,X及M。
註3: 當計數顯示?時表示為近似值 (最初的兩個數值需要輸入),當沒有?並顯示Disp表示為對應的函數值。
註4: 第一個程式若果因按錯鍵而使程式中止,請再執行程式即可,程式將會接著先前的計算。
例題: 解 x3 – 2x – 1 = 0, 1 < x < 2。
第一個程式的按法:
按 Prog 1 再按 1 EXE (顯示 f(1)的值為 - 2) EXE 2 EXE (顯示 f(2)的值為3)
EXE (顯示第一個近似值為1.5) EXE (顯示 f(1.5)的值為 -0.625)
EXE (顯示第二個近似值為1.75) EXE (顯示 f(1.75)的值為 0.859375)
EXE (顯示第三個近似值為1.625) EXE (顯示 f(1.625)的值為 0.041015625)
…………(直至要求的凖確度)
第二個程式的按法:
按 Prog 1 再按 1 EXE (顯示 f(1)的值為 - 2) EXE 2 EXE (顯示 f(2)的值為3)
EXE (顯示1) EXE (顯示2,表示根的範圍為1<X<2)
EXE (顯示第一個近似值為1.5) EXE (顯示 f(1.5)的值為 -0.625)
EXE (顯示1.5) EXE (顯示2,表示根的範圍為1.5<X<2)
EXE (顯示第二個近似值為1.75) EXE (顯示 f(1.75)的值為 0.859375)
EXE (顯示1.5) EXE (顯示1.75,表示根的範圍為1.5<X<1.75)
EXE (顯示第三個近似值為1.625) EXE (顯示 f(1.625)的值為 0.041015625)
…………(直至要求的凖確度)