Sharp PC-E500/E500S Technikersoftware

BISECT.123

Numerische Analyse (nach der Bisektionsmethode)

BISECT.123 (1.476 Bytes)

10 ' BISECT.123 (Method of bisection)
15 CLEAR
20 MERGE "G:COMN.00$"
30 ON ERROR GOTO *ERR
40 GOSUB *CG
50 RADIAN :Q2=0.000001:P5=40:P7=0:Q7=P7:R2$=""
60 GOSUB 900
70 PRINT "f(x)= ";R2$;:IF R2$<>"" THEN PRINT " ";
80 INPUT R2$:IF R2$="" THEN 60
90 IF LEN R2$<30 THEN P3$=R2$:GOTO 110
100 P3$=LEFT$ (R2$,30)+"..."
110 GOSUB 700:P7=0:PRINT " x0= ";:INPUT P7
120 GOSUB 700:PRINT " x0=";P7:Q7=0:PRINT " x1= ";:INPUT Q7
130 GOSUB 900:PRINT CHR$ &A5;"=";Q2;:INPUT Q2:IF Q2<1E-90 THEN 130
140 GOSUB 900:PRINT CHR$ &A5;"=";Q2:PRINT " loop limit=";P5;:INPUT P5
150 IF P5-INT P5<>0 OR P5<=0 THEN 140
160 GOSUB 700
165 R7=P7:P8=Q7
170 GOSUB *DPC
180 X=R7:P3=EVAL R2$
185 IF P3=&0 THEN 280
190 X=P8:Q3=EVAL R2$
195 IF Q3=&0 THEN 280
200 FOR QI=1 TO P5
210 X=(R7+P8)/2:R2=EVAL R2$
215 IF R2=&0 THEN 280
220 IF SGN Q3=SGN R2 AND SGN Q3=SGN P3 GOSUB 800:GOTO 60
230 IF SGN (R2*P3)=1 THEN R7=X:P3=R2 ELSE P8=X:Q3=R2
240 IF Q2>=ABS (R7-P8) THEN 280
250 NEXT
255 GOSUB 800
260 GOSUB 700:LOCATE 1,3:PRINT " loop limit=";P5
270 LOCATE 20,3:PRINT "Xn=";X:GOTO 300
280 QXQ=X:QYQ=INT LOG ABS Q2 -1:GOSUB *RND:X=QXQ
290 GOSUB 700:LOCATE 1,3:PRINT "X=";X
300 GOSUB *REK:GOTO 60
700 GOSUB 900:PRINT "f(x)= ";P3$:RETURN
800 GOSUB 900:GOSUB *DPA:GOSUB *REK:RETURN
900 CLS :PRINT "*NUMERICAL SOLUTION(METHOD OF BISECTION)":LOCATE 1,1:RETURN
1000 *ERR IF ERL =80 RESUME 60
1010 IF ERL =110 OR ERL =120 OR ERL =130 OR ERL =140 RESUME ERL
1020 GOSUB 800:RESUME 60

Generated by (c) Casio FX-850P/FX-880P Notepad 2.02

(c) by mani.becker@web.de - http://blog.manib.bplaced.net