147 lines
3.3 KiB
QBasic
147 lines
3.3 KiB
QBasic
10 COL 0,$56,0
|
||
20 CROFF
|
||
30 CLS
|
||
35 MOUSE 1,0
|
||
40 FRAME 0,$FC,$56,0,0,39,4
|
||
50 WIN 1,255,0,0,1,1,38,3,0
|
||
60 WIN 2,0,$56,0,0,5,39,29,1
|
||
70 COL 255,$56,0
|
||
80 TLOAD 1,"rechner.dat",16,11
|
||
90 STILE 1
|
||
100 BUTTON 1,$a8,1,6,0,"LN "
|
||
110 BUTTON 2,$a8,6,6,0,"LOG"
|
||
120 BUTTON 3,$a8,11,6,0,"FRC"
|
||
130 BUTTON 4,$a8,16,6,0,"MOD"
|
||
140 BUTTON 5,$a8,23,6,0,"MC"
|
||
150 BUTTON 6,$a8,27,6,0,"MR"
|
||
160 BUTTON 7,$a8,31,6,0,"M+"
|
||
170 BUTTON 8,$a8,35,6,0,"M-"
|
||
180 BUTTON 9,$a8,1,9,0,"MIN"
|
||
190 BUTTON 10,$a8,6,9,0,"MAX"
|
||
200 BUTTON 11,$a8,11,9,0,"INT"
|
||
210 BUTTON 12,$a8,16,9,0,"EXP"
|
||
220 BUTTON 13,$a8,1,12,0,"SIN"
|
||
230 BUTTON 14,$a8,6,12,0,"COS"
|
||
240 BUTTON 15,$a8,11,12,0,"TAN"
|
||
250 BUTTON 16,$a8,16,12,0,"COT"
|
||
340 BUTTON 25,$e8,1,22,0,"x"
|
||
350 BUTTON 26,$e8,5,22,0,"e^"
|
||
360 BUTTON 28,$e8,9,22,0," "
|
||
370 BUTTON 29,$e8,13,22,0,"\\"
|
||
373 #a="x"
|
||
374 #b=CHR$ (16)
|
||
375 #c=#a+#b
|
||
380 BUTTON 30,$e8,17,22,0,#c
|
||
500 BUTTON 34,$f8,23,10,0," C "
|
||
510 BUTTON 35,$f8,31,10,0," AC "
|
||
520 BUTTON 36,$3c,23,14,0,"7"
|
||
530 BUTTON 37,$3c,26,14,0,"8"
|
||
540 BUTTON 38,$3c,29,14,0,"9"
|
||
550 BUTTON 39,$3c,23,17,0,"4"
|
||
560 BUTTON 40,$3c,26,17,0,"5"
|
||
570 BUTTON 41,$3c,29,17,0,"6"
|
||
580 BUTTON 42,$3c,23,20,0,"1"
|
||
590 BUTTON 43,$3c,26,20,0,"2"
|
||
600 BUTTON 44,$3c,29,20,0,"3"
|
||
610 BUTTON 45,$3c,23,23,0,"0"
|
||
620 BUTTON 46,$3c,26,23,0,","
|
||
625 #a=CHR$ (35)
|
||
630 BUTTON 47,$3c,29,23,0,#a
|
||
635 #a=CHR$ (39)
|
||
640 BUTTON 48,$3c,32,14,0,#a
|
||
650 BUTTON 49,$3c,32,17,0,"*"
|
||
660 BUTTON 50,$3c,32,20,0,"-"
|
||
670 BUTTON 51,$3c,32,23,0,"+"
|
||
680 BUTTON 52,$3c,23,26,0,"E N T E R!"
|
||
1000 WSET 1
|
||
1010 HOME
|
||
1020 PRINT b;
|
||
1030 #a=""
|
||
1040 #b=""
|
||
1050 #c=""
|
||
1060 z=0
|
||
1100 a=MB 0
|
||
1200 IF a=42 THEN #a="1"
|
||
1210 IF a=43 THEN #a="2"
|
||
1220 IF a=44 THEN #a="3"
|
||
1230 IF a=39 THEN #a="4"
|
||
1240 IF a=40 THEN #a="5"
|
||
1250 IF a=41 THEN #a="6"
|
||
1260 IF a=36 THEN #a="7"
|
||
1270 IF a=37 THEN #a="8"
|
||
1280 IF a=38 THEN #a="9"
|
||
1290 IF a=45 THEN #a="0"
|
||
1300 IF a=46 THEN #a="."
|
||
1310 IF a=46 THEN p=p+1
|
||
1320 IF a>35 AND a<47 THEN o(1)=0
|
||
1400 IF a=48 THEN GOSUB 3000:REM Division
|
||
1410 IF a=49 THEN GOSUB 4000:REM Multiplikation
|
||
1420 IF a=50 THEN GOSUB 5000:REM Minus
|
||
1430 IF a=51 THEN GOSUB 6000:REM plus
|
||
1440 IF a=52 THEN GOTO 50000
|
||
1450 IF a=35 THEN GOSUB 7000:REM AC
|
||
1800 IF a>0 AND a<255 THEN GOSUB 2000
|
||
1900 GOTO 1100
|
||
2000 REM Werteausgabe
|
||
2070 IF o(1)=1 THEN RETURN
|
||
2080 z=z+1:REM zeichenzaehler
|
||
2090 x=ASC (#a)
|
||
2095 IF x=46 AND p>1 THEN GOTO 2990
|
||
2100 #c=#a
|
||
2200 #b=#b+#a
|
||
2890 IF z=1 THEN CLS :REM erstes Zeichen
|
||
2900 PRINT #c;
|
||
2990 RETURN
|
||
3000 REM Division
|
||
3100 z=0:a(1)=VAL (#b)
|
||
3200 o=1
|
||
3300 o(1)=1:REM operatortaste gedrueckt
|
||
3400 p=0
|
||
3500 #a=""
|
||
3510 #b=""
|
||
3520 #c=""
|
||
3990 RETURN
|
||
4000 REM Multiplikation
|
||
4100 z=0:a(1)=VAL (#b)
|
||
4200 o=2
|
||
4300 o(1)=1
|
||
4400 p=0
|
||
4500 #a=""
|
||
4510 #b=""
|
||
4520 #c=""
|
||
4990 RETURN
|
||
5000 REM minus
|
||
5100 z=0:a(1)=VAL (#b)
|
||
5200 o=3
|
||
5300 o(1)=1
|
||
5400 p=0
|
||
5500 #a=""
|
||
5510 #b=""
|
||
5520 #c=""
|
||
5990 RETURN
|
||
6000 REM Plus
|
||
6100 z=0:a(1)=VAL (#b)
|
||
6200 o=4
|
||
6300 o(1)=1
|
||
6400 p=0
|
||
6500 #a=""
|
||
6510 #b=""
|
||
6520 #c=""
|
||
6990 RETURN
|
||
7000 REM AC-Taste
|
||
7100 CLEAR
|
||
7110 CLS
|
||
7120 PRINT "0";
|
||
7990 RETURN
|
||
50000 REM Enter
|
||
50100 z=0:a(2)=VAL (#b)
|
||
50200 IF o=1 THEN a(3)=a(1)/a(2)
|
||
50300 IF o=2 THEN a(3)=a(1)*a(2)
|
||
50400 IF o=3 THEN a(3)=a(1)-a(2)
|
||
50500 IF o=4 THEN a(3)=a(1)+a(2)
|
||
59000 CLS
|
||
59100 PRINT a(3);
|
||
59200 a(1)=a(3)
|
||
59900 GOTO 1100
|
||
|