1 REM ********************************* 2 REM * * 3 REM * PLOTTEN BELIEBIGER FUNKTIONEN * 4 REM * MIT DEM PRINTER/PLOTTER 1520 * 5 REM * * 6 REM * HEIMO PONNATH HAMBURG 1985 * 7 REM * * 8 REM ********************************* 9 GOTO 25 10 REM ++++++++ UP CURSOR SETZEN ++++++ 15 POKE211,SP:POKE214,Z:SYS58640:RETURN 20 REM ++++++++ HAUPTPROGRAMM TEIL 1 ++ 25 PRINTCHR$(147):Z=10:SP=1:GOSUB15 30 PRINT"IM PROGRAMM BEFINDET SICH DIE FUNKTION:" 35 K=1:GOSUB90:K=0:PRINT:PRINT"Y= "F$:Z=18:GOSUB15 40 PRINTCHR$(18)"A"CHR$(146)"LTE ODER "CHR$(18)"N"CHR$(146)"EUE FUNKTION ?" 45 GETA$:IFA$<>"A"ANDA$<>"N"THEN45 50 IFA$="A"THEN85 55 REM ++ NEUE FUNKTION INS PROGRAMM ++ 60 Z=20:SP=3:GOSUB15:PRINT"NEUE FUNKTION:":INPUT"Y= ";F$:POKE646,6 65 PRINTCHR$(147)CHR$(17)CHR$(17)"90F$="CHR$(34)F$CHR$(34) 70 PRINT"95DEFFNA(X)="F$:PRINT"RUN85":PRINTCHR$(19); 75 POKE631,13:POKE632,13:POKE633,13:POKE198,3:END 80 REM ++++++++ HAUPTPROGRAMM TEIL 2 ++ 85 PRINTCHR$(147):POKE646,14 90 F$="X^2/2" 95 DEFFNA(X)=X^2/2 100 IFK=1THENRETURN 105 REM ++++ VARIABLE UND FUNKTIONEN ++ 110 DEFFNT(X)=INT(479/(XO-XU)*X) 115 X=0:Z=0:SP=0:XU=-1:XO=5:YU=-1:YO=5:YM=6:XA=XU:XE=XO 120 X1=0:X2=0:Y1=0:Y2=0:D=150:DY=.1:I=10:M=10:DX=.2 125 A$="" 130 REM +++ PLOTTERKANAELE OEFFNEN ++++ 135 OPEN1,6,1:OPEN4,6:OPEN2,6,2:OPEN3,6,3:PRINT#2,3 140 REM +++++ PARAMETEREINGABEN +++++++ 145 Z=0:SP=0:GOSUB15:PRINT"FUNKTION Y="F$ 150 Z=2:GOSUB15:PRINT"(FALLS SIE MIT UNSTETIGKEITEN RECHNEN," 155 PRINT"DANN VERMEIDEN SIE ES, DIE POLSTELLEN" 160 PRINT"ALS PARAMETER (XU,XO,EVTL.XA ODER XE) " 165 PRINT"ZU VERWENDEN. D SOLLTE DANN KLEIN SEIN." 170 Z=7:SP=10:GOSUB15:PRINT"XU UND XO =" 175 Z=14:SP=10:GOSUB15:PRINT"YU UND YO =" 180 Z=16:SP=0:GOSUB15:PRINT"SPEZ. ZEICHENBEREICH GEWUENSCHT(J/N)?" 182 Z=22:SP=10:GOSUB15:PRINT"SCHRITTWEITE (D=CA.150)" 185 Z=7:SP=25:GOSUB15:INPUTXU,XO 190 YM=INT(998*(XO-XU)/479):Z=9:SP=3:GOSUB15:PRINT"YU MINIMUM = ",-YM/2 195 Z=10:SP=3:GOSUB15:PRINT"YO MAXIMUM = ",YM/2:Z=11:SP=0:GOSUB15 200 PRINT"(DIE SUMME AUS [194]YU[194] UND YO DARF "YM:PRINT" NICHT UEBERSCHREITEN!) 205 Z[178]14:SP[178]25:[141]15:[133]YU,YO:[139](YO[171]YU)[177]YM[167]205 210 Z[178]16:SP[178]36:[141]15:[133]A$:[139]A$[179][177]"J"[175]A$[179][177]"N"[167]210 215 [139]A$[178]"N"[167]XA[178]XU:XE[178]XO:[137]232 220 Z[178]18:SP[178]3:[141]15:[153]"(XA > XU UND XE < XO !" 225 Z[178]20:SP[178]10:[141]15:[153]"XA UND XE =":SP[178]25:[141]15:[133]XA,XE 230 [139]XA[179]XU [176]XE[177]XO[167]225 232 Z[178]22:SP[178]32:[141]15:[133]D 235 [143] +++ PLOTTEN ANFANGSWERTE ++++++ 240 [152]1,"H":[152]1,"M",[165]T([171]XU),[171][165]T(YO):[152]1,"I" 245 X1[178][165]T(XU)[170]1:X2[178][165]T(XO)[171]1:Y1[178][165]T(YO)[171]1:Y2[178][165]T(YU)[170]1 250 [143] +++ PLOTTEN KOORDINATENSYSTEM + 255 [152]1,"R",0,Y1:[152]1,"J",0,Y2:[152]1,"R",X2,0:[152]1,"J",X1,0 260 [143] +++ PLOTTEN SKALIERUNG ++++++++ 265 DY[178](XO[171]XU)[173]47 270 [129]I[178]XU[170]1[164]XO[171]1:M[178][181](I):[152]1,"R",[165]T(M),[165]T(0) 275 [152]1,"J",[165]T(M),[165]T([171]DY) 280 [130]I 285 [129]I[178]YU[170]1[164]YO[171]1:M[178][181](I):[152]1,"R",[165]T(0),[165]T(M) 290 [152]1,"J",[165]T(DY),[165]T(M) 295 [130]I:[152]2,0 300 [143] *** PLOTTEN FUNKTION ++++++++++ 305 [139][165]T([165]A(XA))[177]Y1[167][152]1,"R",[165]T(XA),Y1:[137]320 310 [139][165]T([165]A(XA))[179]Y2[167][152]1,"R",[165]T(XA),Y2:[137]320 315 [152]1,"R",[165]T(XA),[165]T([165]A(XA)) 320 [129]X[178]XA[164]XE[169](XO[171]XU)[173]D 325 [139][165]T([165]A(X))[177]Y1[167][152]1,"R",[165]T(X),Y1:[137]340 330 [139][165]T([165]A(X))[179]Y2[167][152]1,"R",[165]T(X),Y2:[137]340 335 [152]1,"J",[165]T(X),[165]T([165]A(X)) 340 [130]X 345 [139](XO[171]XU)[177]25[167]405 350 [143] +++ PLOTTEN EINHEITENZAHLEN +++ 355 [152]2,3:[152]3,0:DX[178](XO[171]XU)[173]28 360 [129]I[178]XU[170]1[164]XO[171]1:M[178][181](I):[152]1,"M",[165]T([171]XU),[171][165]T(YO):[152]1,"I" 365 [152]1,"R",[165]T(M),[165]T([171]DX):[139]M[178]0[167]375 370 [152]4,M; 375 [130]I 380 [129]I[178]YU[170]1[164]YO[171]1:M[178][181](I):[152]1,"M",[165]T([171]XU),[171][165]T(YO):[152]1,"I" 385 [152]1,"R",[165]T(DX),[165]T(M):[139]M[178]0[167]395 390 [152]4,M; 395 [130]I 400 [143] +++ PLOTTEN FUNKTIONSNAME +++++ 405 [152]2,2 410 [152]1,"M",[165]T([171]XU),[171][165]T(YO):[152]1,"I":[152]1,"R",X1,Y2 415 [152]1,"J",X2,Y2:[152]1,"J",X2,Y1:[152]1,"J",X1,Y1:[152]1,"J",X1,Y2 420 [152]4:[152]4:[152]2,1:[152]3,1:[152]4,"Y = "F$:[152]4:[152]2,0 425 [143] +++ PLOTTERKANAELE SCHLIESSEN + 430 [160]1:[160]2:[160]3:[160]4 435 [128]