Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß) 10 WINDOW 0,31,0,31:CLS:GOTO 2480 20! 30 IF TS<0 THEN 60 40 C=TS+64:IF C>90 THEN C=C+6 50 PRINT AT(H,7);CHR$(C) 60 FOR M=0 TO 16:FOR N=0 TO 3:NN=N+K 61! 62! 70 IF N=0 AND TS>=0 THEN NN=TS 80 A$=T$(0,NN,M+J):PRINT AT(M+T,4+N*7);U$:IF LEFT$(A$,1)=""THEN 160 90 IF ASC(A$)=39 THEN 150 100 G=INT(VAL(A$)*O+.5)/O 110 A$=STR$(G):A=LEN(A$) 111 IF INSTR("E+",A$)<>0 THEN 112:ELSE 128 112 FOR V=1 TO A:IF MID$(A$,V,1)="."THEN 114 113 NEXT V 114 UU=3:A$=LEFT$(A$,4)+RIGHT$(A$,4):A=LEN(A$):GOTO 130 128 FOR V=1 TO A:IF MID$(A$,V,1)="."THEN 130 129 NEXT V 130 V=V-1:PRINT AT(M+T,UU+7*N);V$:PRINT AT(M+T,UU-V+7*N);A$:V=7: NEXT N:NEXT M 140 RETURN 150 PRINT AT(M+T,4+7*N);MID$(A$,2) 160 NEXT N:NEXT M 170 RETURN 180! 190 IF K<0 THEN K=0 200 GOTO 240 210! 220! 230 IF K>U-3 THEN K=U-3 240 FOR N=0 TO 3:A=64+K+N:IF A>90 THEN A=A+6 250 PRINT AT(Z,7+7*N);CHR$(A):NEXT N:RETURN 260 C=5020-Y*32-X*7:BB=PEEK(-C):CC=PEEK(-(C-6)) 268 PRINT AT(Y+2,7*X+4);">" 270 PRINT AT(Y+2,7*X+10);"<":C=K+X+64:IF C>90 THEN C=C+6 275 IF BB=45 THEN BB=32 276 IF CC=45 THEN CC=32 280 IF BB=0 THEN BB=32 290 IF CC=0 THEN CC=32 300 PRINT AT(20,29);Y+J:PRINT AT(20,28);CHR$(C)+"-" 304 PRINT AT(20,2);U$+U$:PRINT AT(20,2);STRING$(17,".") 305 PRINT AT(20,1);"<":PRINT AT(20,2);T$(0,X+K,Y+J):PRINT AT(20,18);"> " 310 PRINT AT(26,8);STRING$(22," "):PRINT AT(26,8);T$(1,X+K,Y+J):RETURN 320! 330 WINDOW 23,23,1,17:CLS:INPUT "VON:BIS ";C$:WINDOW 340 FOR N=3 TO 4:IF MID$(C$,N,1)=":"THEN 360 350 NEXT N:GOTO 330 360 A$=LEFT$(C$,N-1):B$=MID$(C$,N+1) 370 A=ASC(A$)-64:B=VAL(MID$(A$,2)):C=ASC(B$)-64:D=VAL(MID$(B$,2)) 380 IF C>32 THEN C=C-6 390 IF A>32 THEN A=A-6 400 IF A<0 OR A>U OR C<0 OR C>U THEN 330 410 RETURN 420! 430 IF J<0 THEN J=0 440 IF J>JJ THEN J=JJ 450 FOR N=0 TO 16:A$=STR$(N+J):PRINT AT(N+2,0);RIGHT$(A$,2) 455 PP=VAL(A$): NEXT N:RETURN 460 PRINT AT(Y+2,4+7*X);CHR$(BB):PRINT AT(Y+2,10+7*X);CHR$(CC) 465 IF Q=13 THEN IF PP>=JJ THEN 2830 470 IF Q=8 THEN X=X-1:IF X=-1 THEN K=K-1:X=0:GOSUB 190:GOSUB 30 475! 480 IF Q=9 THEN X=X+1:IF X=4 THEN X=3:K=K+1:GOSUB 230:GOSUB 30 485! 490 IF Q=11 THEN Y=Y-1:IF Y<0 THEN Y=0:J=J-1:GOSUB 430:GOSUB 30 495! 500 IF Q=10 THEN Y=Y+1:IF Y>16 THEN Y=16:J=J+1:GOSUB 430:GOSUB 2800:GOSUB 30 510 GOSUB 260 520 A$=INKEY$:IF A$=""THEN 520 530 Q=ASC(A$):IF Q>7 AND Q<12 THEN 460 540 RETURN 550 FOR V=4 TO 5:IF MID$(A$,V,1)=":"THEN 580 560 NEXT V 570 GOTO 540 580 A=ASC(MID$(A$,2,1))-64:B=VAL(MID$(A$,3,V-3)):C=ASC(MID$(A$,V+1,1))-64 590 D=VAL(MID$(A$,V+2,2)):V=A:G=B:IF A>32 THEN A=A-6 600 IF C>32 THEN C=C-6 610 S=0:FOR V=A TO C:FOR G=B TO D:S=S+VAL(T$(0,V,G)):NEXT G:NEXT V 620 T$(0,N,M)=STR$(S):RETURN 630! 640 G=1:A$=A$+"+" 650 A=LEN(A$):S=0:FOR V=2 TO A:IF MID$(A$,V,1)<>"+"THEN 700 660! 670 B=ASC(MID$(A$,G+1,1))-64:C=VAL(MID$(A$,G+2,V-G-2)):G=V 680 IF B>32 THEN B=B-6 690 S=S+VAL(T$(0,B,C)) 700 NEXT V:T$(0,N,M)=STR$(S):RETURN 710! 720 A$=T$(1,N,M):E=LEN(A$) 730 FOR BV=2 TO E 740 P$=MID$(A$,BV,1):IF ASC(P$)<48 AND ASC(P$)<>46 OR ASC(P$)=94 THEN 760 750 NEXT BV 760 S$(1)=LEFT$(A$,BV-1):S$(2)=MID$(A$,BV+1):E(1)=ASC(S$(1)):E(2)=ASC(S$(2)) 770 IF E(1)>96 THEN E(1)=E(1)-6 780 IF E(2)>96 THEN E(2)=E(2)-6 790 FOR V=1 TO 2:IF E(V)<59 THEN Z(V)=VAL(S$(V)):GOTO 820 800 IF T$(0,E(V)-64,M)=""OR LEFT$(T$(0,E(V)-64,M),1)="'"THEN RETURN 810 Z(V)=VAL(T$(0,E(V)-64,M)) 820 NEXT V 830 IF P$="/"THEN P$="," 840 IF P$="^"THEN P$=")" 850 Q=ASC(P$)-40 860 ON Q GOSUB 900,890,880,910,920 865 IF BV<E THEN 6600 870 RETURN 880 T$(0,N,M)=STR$(Z(1)+Z(2)):RETURN 890 T$(0,N,M)=STR$(Z(1)*Z(2)):RETURN 900 T$(0,N,M)=STR$(Z(1)^Z(2)):RETURN 910 T$(0,N,M)=STR$(Z(1)/Z(2)):RETURN 920 T$(0,N,M)=STR$(Z(1)-Z(2)):RETURN 930! 940 WINDOW:CLS:PRINT AT(1,0);STRING$(32,"-") 950 PRINT AT(19,0);STRING$(32,"-"):GOSUB 190:GOSUB 450:GOTO 960 960 GOSUB 260:PRINT AT(26,1);"FORMEL:":IF M<>0 THEN GOSUB 30 970 PRINT AT(20,22);"CURS. ":PRINT AT(26,1);"FORMEL:" 980 PRINT AT(21,0);" Feld/ Sum/ Jump/ Menue/ Ende " 990 PRINT AT(22,0);UU$:PRINT AT(23,0);UU$:PRINT AT(22,22);"HELP = H" 994 PRINT AT(28,0);STRING$(32,"-") 995 PRINT AT(29,5);"Blatt = Sp./ Z.":PRINT AT(29,10);HJ 996 PRINT AT(29,14);U:PRINT AT(29,22);JJ 1000 PRINT AT(22,1);"Eingabe->":GOTO 1120 1010! 1020 IF F=3 THEN UU=6 1021 IF F=1 THEN UU=8 1022 IF F=0 THEN UU=9 1023 IF F=2 THEN UU=7 1025 PRINT AT(2+Y,4+7*X);U$:IF ASC(B$)=39 THEN 1070 1030 G=INT(VAL(B$)*O+.5)/O:A$=STR$(G):A=LEN(A$) 1031 IF INSTR("E+",A$)<>0 THEN 1032:ELSE 1040 1032 FOR V=1 TO A:IF MID$(A$,V,1)="."THEN 1033:NEXT V 1033 UU=3:A$=LEFT$(A$,4)+RIGHT$(A$,4):A=LEN(A$):GOTO 1060 1040 FOR V=1 TO A:IF MID$(A$,V,1)="."THEN 1060 1050 NEXT V 1060 V=V-1:PRINT AT(Y+2,UU+7*X);V$:PRINT AT(Y+2,UU-V+7*X);A$:GOTO 1080 1070 PRINT AT(Y+2,4+7*X);MID$(B$,2) 1080 T$(0,K+X,Y+J)=B$ 1090 Y=Y+1:IF Y>16 THEN Y=16:J=J+1:GOSUB 430:GOSUB 2800:GOSUB 30 1100 A=Y+2:B=X*7:GOSUB 260:GOTO 1120 1110! 1120 PRINT AT(24,1);UL$:PRINT AT(24,1);"* <--":B$="":W=1 1130 PRINT AT(22,10);W-1 1140 A$=INKEY$:IF A$=""THEN 1140 1150 Q=ASC(A$):IF Q>7 AND Q<12 THEN GOSUB 460 1160 IF Q=13 AND LEFT$(B$,1)<>""THEN 1240 1170 IF Q=32 AND W>1 THEN B$=LEFT$(B$,(LEN(B$)-1)) 1175 IF Q=32 AND W>1 THEN PRINT AT(24,W);" ":W=W-1:GOTO 1220 1180 IF(W<9 AND Q>31)OR(LEFT$(B$,1)="'"AND W<38)THEN B$=B$+A$:W=W+1 1190 IF B$="M"THEN WINDOW 20,24,0,31:CLS:GOTO 1310 1195 IF B$="H"THEN 5000 1200 IF B$="S"THEN 2430 1205 IF B$="F"THEN 2850 1210 IF B$="J"THEN B$="":GOTO 1730 1215 IF B$="E"THEN WINDOW:CLS:END 1220 PRINT AT(24,1);B$+"* <--":GOTO 1130 1230! 1240 W=W-1 1250 IF W>10 THEN FOR N=0 TO W/5 :T$(0,K+X+N,Y+J)="'"+MID$(B$,9*N+2,9):GOTO 1270 1260 GOTO 1020 1270 IF N+X<4 THEN PRINT AT(Y+2,4+7*(N+X));U$ 1280 NEXT N:PRINT AT(Y+2,4+7*X);MID$(B$,2,1) 1290 GOTO 1090 1300! 1310 WINDOW 20,23,17,31:PRINT "Kalk Form Whng "; 1320 PRINT "Save Load Print";:PRINT "Copy Rand Op Del >Zurueck<"; 1330 WINDOW:PRINT AT(22,1);"** MENUE **" 1340 A$=INKEY$:IF A$=""THEN 1340 1345 PRINT AT(22,0);UL$:PRINT AT(23,0);UL$ 1350 Q=ASC(A$):BEEP:IF Q<12 THEN GOSUB 460:GOTO 1350 1360 IF A$=CHR$(13)THEN 970 1370 IF A$="K"THEN 1850 1380 IF A$="W"THEN 1810 1390 IF A$="C"THEN 1940 1400 IF A$="O"THEN 2270 1410 IF A$="D"THEN 1680 1420 IF A$="L"THEN 2210 1430 IF A$="R"THEN 2360 1440 IF A$="P"THEN 1490 1450 IF A$="F"THEN 2030 1460 IF A$="S"THEN 2120 1465 IF A$="Z"THEN WINDOW 20,25,0,31:CLS:WINDOW:GOTO 960 1470 GOTO 1340 1480! 1490 PRINT AT(22,1);"**DRUCK**":GOSUB 4700 1492 IF I$="H"THEN 6572 1494 GOSUB 6940:GOSUB 330 1500 IF C-A>6 OR B>JJ OR D>JJ THEN 1490 1505 IF A<1 OR C>U THEN 1490 1510 WINDOW:PRINT#2 CHR$(27);CHR$(64) 1520 FOR M=B TO D:B$=" " 1530 FOR N=A TO C:A$=T$(0,N,M):IF A$=""THEN A$=U$:GOTO 1630 1540 IF ASC(A$)=39 THEN 1620 1550 G=INT(VAL(A$)*O+.5)/O:A$=STR$(G):I=LEN(A$) 1560 FOR V=1 TO I:IF MID$(A$,V,1)="."THEN 1580 1570 NEXT V 1580 V=V-1 1590 H=I-V:IF F=0 THEN V=V-1 1600 A$=STRING$(7-V-F," ")+A$ 1610 A$=A$+MID$(Y$,H+1,8-LEN(A$)):V=11:GOTO 1630 1620 A$=MID$(A$,2)+STRING$(10-LEN(A$)," ") 1630 B$=B$+A$ 1640 NEXT N:PRINT#2B$:NEXT M 1650 WINDOW:PRINT#2 CHR$(27);CHR$(64) 1660 GOTO 940 1670! 1680 PRINT AT(22,1);"**DELETE**":GOSUB 4700 1682 IF I$="H"THEN 6300 1683 GOSUB 6940:GOSUB 330 1690 FOR N=A TO C:FOR M=B TO D:T$(0,N,M)="":T$(1,N,M)="" 1700 PRINT AT(23,0);N,M:NEXT M:NEXT N 1710 GOSUB 30:GOSUB 260:GOTO 970 1720! 1730 WINDOW 22,23,1,12:CLS:INPUT "POS:";A$:WINDOW 1740 K=ASC(A$)-64:Y=VAL(MID$(A$,2)):J=0:X=0 1744 IF K>32 THEN K=K-6 1745 IF K>U OR Y>JJ THEN 1730 1760 IF K>U OR Y+J>31 OR Y+J<0 THEN 1730 1770 IF K>U-3 THEN X=3-U+K:K=K-X 1780 IF Y>16 THEN J=Y-16:Y=16 1785 IF Y>16 THEN PP=JJ-Y 1790 GOSUB 190:GOSUB 450:GOSUB 30:GOSUB 260:GOTO 970 1800! 1810 PRINT AT(22,1);"**WHNG**":GOSUB 4700 1815 IF I$="H"THEN 5800 1816 GOSUB 6940:GOSUB 330 1820 A$=T$(0,X+K,Y+J):FOR N=A TO C 1825 FOR M=B TO D:T$(0,N,M)=A$ 1830 PRINT AT(23,0);N,M:NEXT M:NEXT N:GOSUB 30:GOSUB 260:GOTO 970 1840! 1850 PRINT AT(22,1);"**KALK**":GOSUB 4700 1851 IF I$="H"THEN 5600 1860 GOSUB 6940:GOSUB 330:PRINT AT(22,1);"ICH RECHNE.":A1=A:B1=B:C1=C:D1=D 1870 FOR N=A1 TO C1:FOR M=B1 TO D1 1880 O$=T$(1,N,M):IF LEFT$(O$,1)=""THEN 1910 1890 IF ASC(O$)=32 THEN A$=O$:GOSUB 550:GOTO 1910 1900 GOSUB 710 1910 PRINT AT(23,0);N,M:NEXT M:NEXT N 1920 PRINT AT(22,0);UL$:GOSUB 30:GOSUB 260:GOTO 970 1930! 1940 PRINT AT(22,1);"**COPY**":GOSUB 4700 1941 IF I$="H"THEN 5900 1942 GOSUB 6940:GOSUB 330 1950 WINDOW 23,23,1,12:INPUT "NACH :";B$:IF B$=""THEN 1310 1960 WINDOW:IF ASC(B$)<57 THEN 2000 1970 E=ASC(B$)-64:IF E>90 THEN E=E-6 1980 FOR N=A TO C:FOR M=B TO D:T$(0,E,M)=T$(0,N,M):T$(1,E,M)=T$(1,N,M):NEXT M 1990 NEXT N:GOTO 2020 2000 E=VAL(B$) 2010 FOR N=A TO C:FOR M=B TO D:T$(0,N,E)=T$(0,N,M):T$(1,N,E)=T$(1,N,M) 2015 NEXT M:NEXT N 2020 GOSUB 30:GOSUB 260:GOTO 970 2030 PRINT AT(22,1);"**FORMAT**":GOSUB 4700 2032 IF I$="H"THEN 6500 2040 WINDOW 23,23,1,31:CLS:INPUT "STELLEN:";F:WINDOW 2050 PRINT AT(23,0);UU$ 2060 IF F<0 OR F>3 THEN 2040 2070 O=10^F:UU=11-F 2080 IF F=0 THEN UU=12 2090 V$=MID$(Y$,1,F+1):IF F=0 THEN V$="" 2100 GOSUB 190:GOSUB 30:GOSUB 260:GOTO 970 2110! 2120 WINDOW:CLS:PRINT:PRINT "**BLATT SAVEN**" 2130 PRINT:PRINT "FELDGROSSE MERKEN:";HJ 2140 PRINT:INPUT "DATEINAME";X$:PRINT:PRINT "RECORDER START >ET<" 2150 B$=INKEY$:IF B$=""THEN 2150 2170 CSAVE*""+X$;T$ 2180 WINDOW 2190 GOTO 930 2200! 2210 WINDOW:CLS:PRINT:PRINT "**BLATT LADEN**" 2220 PRINT:INPUT "DATEINAME:";X$ 2230 PRINT:PRINT "RECORDER STARTEN >ET<" 2235 I$=INKEY$:IF I$=""THEN 2235 2240 CLOAD*""+X$;T$ 2250 WINDOW 2260 GOTO 930 2270 PRINT AT(22,1);"**RECHNUNG**":GOSUB 4700 2275 IF I$="H"THEN 6000 2280 O$="":S$="":WINDOW 23,23,1,31:CLS:INPUT "DEF.";O$ 2290 WINDOW 2300 IF O$=""THEN PRINT AT(23,0);UL$:GOTO 970 2310 GOSUB 330 2320 FOR N=A TO C:FOR M=B TO D:T$(1,N,M)=O$:GOSUB 710 2330 PRINT AT(23,0);N,M:NEXT M:NEXT N 2340 IF C<K+4 AND C>K-1 THEN GOSUB 30:GOSUB 260:GOTO 970 2350 GOTO 970 2360 PRINT AT(22,1);"**RAND**":GOSUB 4700 2362 IF I$="H"THEN 6400 2370 WINDOW 23,23,1,31:CLS:INPUT "SPALTE:";A$ 2380 WINDOW:IF A$=""THEN TS=-1:GOTO 960 2390 TS=ASC(A$)-64:IF TS>32 THEN TS=TS-6 2400 IF TS>U THEN 2370 2410 GOTO 960 2420! 2430 WINDOW 22,23,1,16:CLS:INPUT "VON:BIS->";A$ 2440 A$=" "+A$:CLS:T$(1,X+K,Y+J)=A$ 2450 WINDOW:N=X+K:M=Y+J:GOSUB 550:B$=STR$(S):PRINT AT(22,1);"EINGABE:" 2455 GOTO 1020 2460 PRINT AT(Y+2,UU+9*X-LEN(STR$(INT(G))));G:GOSUB 310:GOTO 970 2470! 2480! 2490 PRINT AT(10,2);"** K A L K U L A T I O N **" 2500 PRINT AT(12,2);" (fuer den Z1013)" 2503 GOSUB 6900 2505 PRINT AT(25,0);"------------------------------" 2506 CLEAR:CLEAR 256 2510 PRINT AT(27,0);"(Programm ca 13500 Bytes )" 2511 PRINT AT(28,0);"(Feld 1 ca 17100 Bytes )" 2512 PRINT AT(29,0);"(Feld 2 ca 16800 Bytes )" 2513 PRINT AT(30,0);"(Feld 3 ca 13600 Bytes )" 2590 PRINT AT(17,0);"(1) = 52 Spalten / 16 Zeilen" 2600 PRINT AT(18,0);"(2) = 26 Spalten / 31 Zeilen" 2610 PRINT AT(19,0);"(3) = 26 Spalten / 16 Zeilen":CLEAR 10000 2612 PRINT AT(23,0);"Eingabe der Blattgroesse: " 2614 WINDOW 23,23,27,30:CLS 2620 A$=INKEY$:IF A$=""THEN 2620 2630 PRINT AT(23,27);A$:IF A$="1"THEN U=52:JJ=16:HJ=1:GOTO 2660 2640 IF A$="2"THEN U=26:JJ=31:HJ=2:GOTO 2660 2650 IF A$="3"THEN U=26:JJ=16:HJ=3:GOTO 2660 2660 DIM T$(1,U,JJ):BB=32:CC=32:T=2:Y$=".000":V$=".00" 2670 K=1:F=2:TS=-1:U$=" ":O=100:UU=7:UL$=" " 2680 UU$=" " 2690 WINDOW:GOTO 930 2700! 2710 RETURN 2800 IF PP>JJ THEN J=0:Y=0:X=X+1:GOSUB 450:IF X=4 THEN X=3 2820 RETURN 2830 J=0:Y=0:X=X+1:GOSUB 450:IF X=4 THEN X=3 2840 GOTO 470 2850 WINDOW 20,31,0,31:CLS 2860 PRINT "FELDEINTRAGUNGEN LOESCHEN? (J)/N" 2870 I$=INKEY$:IF I$=""THEN 2870 2880 IF I$="N"THEN CLS:GOTO 2920 2890 PRINT "**MOMENT**" 2900 FOR N=0 TO U:FOR M=0 TO JJ:T$(0,N,M)="":NEXT M:NEXT N 2910 CLS 2920 PRINT "FORMELN LOESCHEN? (J)/N" 2930 I$=INKEY$:IF I$=""THEN 2930 2940 IF I$="N"THEN CLS:WINDOW:GOTO 930 2950 PRINT "**MOMENT**" 2960 FOR N=0 TO U:FOR M=0 TO JJ:T$(1,N,M)="":NEXT M:NEXT N 2970 CLS:WINDOW:GOTO 930 4700 PRINT AT(23,1);"HELP -> H (N) / Z -> Zurueck" 4710 I$=INKEY$:IF I$=""THEN 4710 4720 IF I$="Z"THEN 960 4730 RETURN 4900 WINDOW 20,31,0,31:CLS 4910 RETURN 4920 CLS:WINDOW 4930 RETURN 4940 I$=INKEY$:IF I$=""THEN 4940 4950 RETURN 5000 GOSUB 4900 5005 PRINT "'Kalkulation' ist ein Programm" 5010 PRINT "zum Erstellen und Berechnen von" 5020 PRINT "Tabellen." 5030 PRINT "Die einzelnen Funktionen werden" 5040 PRINT "durch den Anfangsbuchstaben auf-" 5050 PRINT "gerufen." 5055 PRINT " >ET<":GOSUB 4940:CLS 5060 PRINT "Die Anleitung wird immer durch" 5070 PRINT "Eingabe von >H< aufgerufen." 5110 PRINT:PRINT "3 Arbeitsblaetter gibt es: " 5120 PRINT "(1) = Spalten A-z / Zeilen 0-16" 5130 PRINT "(2) = A-Z / 0-31" 5140 PRINT "(3) = A-Z / 0-16" 5150 PRINT " >ET<" 5160 GOSUB 4940 5170 CLS 5180 PRINT "Befehle im Grundmenue:" 5190 PRINT "F= Die Formeln und/oder Eintra-" 5200 PRINT " gungen im Blatt koennen ge- " 5210 PRINT " loescht werden." 5220 PRINT "S= Felder u. Bereiche koennen " 5230 PRINT " addiert werden." 5235 PRINT " >ET<":GOSUB 4940:CLS 5240 PRINT "J= Sprung auf ein anderes Feld " 5280 PRINT "M= Sprung zum Untermenue" 5290 PRINT "Untermenue:" 5300 PRINT "K= durchrechnen des Blattes" 5310 PRINT "F= Dezimalstellen 0-3" 5320 PRINT "W= Wiederholung von Zeilen oder" 5330 PRINT " Bereichen." 5335 PRINT " >ET<":GOSUB 4940:CLS 5340 PRINT "O= Eingabe von Formeln" 5350 PRINT "R= Festlegung Randspalte" 5360 PRINT "C= Copieren von Eintragungen" 5400 PRINT "D= Loeschen von Eintragungen" 5410 PRINT "P= Drucken des Blattes" 5420 PRINT "S= Saven des Blattes" 5430 PRINT "L= Laden eines Blattes" 5440 PRINT " >ET<" 5450 GOSUB 4940 5460 CLS 5470 PRINT "Eingabe:" 5480 PRINT "Buchstabeneingaben werden mit" 5490 PRINT "Hochkomma ' eingeleitet." 5500 PRINT "Bei Dezimalangaben fuer Komma" 5510 PRINT "Punkt schreiben." 5511 PRINT "Cursor: <--- --->" 5512 PRINT " S4 S = hoch S4 R = runter" 5513 PRINT "Leertaste=Zeichen links loeschen" 5520 PRINT " >ET<" 5530 GOSUB 4940 5540 GOSUB 4920:GOTO 960 5600 GOSUB 4900!KALK 5610 PRINT "Wenn Werte geaendert wurden und" 5620 PRINT "Formeln durch >OP< eingegeben" 5630 PRINT "wurden, muss das Blatt neu " 5640 PRINT "durchgerechnet werden." 5650 PRINT "Es wird von:bis abgefragt." 5660 PRINT "Eingabe ist eine Zeile A0:D0," 5670 PRINT "Spalte A0:A7 oder Bereich A0:D9" 5680 PRINT "Die Formeln werden neu gerechnet" 5690 PRINT " >ET<" 5700 GOSUB 4940 5710 GOSUB 4920:GOTO 1850 5800 GOSUB 4900:!WHNG 5810 PRINT "Wiederholung des Feldinhaltes," 5820 PRINT "ueber dem der Cursor steht." 5830 PRINT "Eingabe von:bis der Inhalt" 5840 PRINT "wiederholt werden soll." 5850 PRINT "z.Bsp. fuer Unterstreichungen." 5860 PRINT "Eingabe z.B.: B4:D4 oder B4:D5" 5870 PRINT " >ET<":GOSUB 4940 5875 GOSUB 4920:GOTO 1810 5900 GOSUB 4900:!COPY 5910 PRINT "Kopieren v. Spalten oder Teilen" 5920 PRINT "einer Spalte in eine andere" 5930 PRINT "Spalte. Formeln werden ohne" 5940 PRINT "Anpassung kopiert." 5950 PRINT "von:bis = Eingabe der Ausgangs-" 5960 PRINT "spalte oder des Feldes" 5970 PRINT "nach: = Eingabe der Zielspalte" 5980 PRINT "A4:A7 nach C oder A4:A4 nach C" 5990 PRINT " >ET<":GOSUB 4940 5995 GOSUB 4920:GOTO 1940 6000 GOSUB 4900:!OP 6010 PRINT "Eingabe von Berechnungsformeln." 6020 PRINT "+ - * / ^ in Verknuepfungen" " 6030 PRINT "Verknuepfungen (nur Spalten!):" 6040 PRINT "Spalte mit Spalte" 6050 PRINT "Spalte mit Konstante" 6060 PRINT "Spalte m. Konst. m. Spalte" 6065 PRINT "Beliebig viele Verknuepfungen" 6066 PRINT "moeglich. Reihenfolge egal." 6070 PRINT " >ET<":GOSUB 4940 6080 CLS 6090 PRINT "Beispiele:" 6100 PRINT "A*A A+B C+4 A/B B^2 A+F*D-2" 6110 PRINT "DEF: Eingabe der Rechenart" 6120 PRINT "von:bis = Bereich, in dem die" 6130 PRINT "Berechnung eingetragen werden" 6140 PRINT "soll. Belbig viele Variable" 6150 PRINT "koennen verknuepft werden." 6200 PRINT " >ET<":GOSUB 4940 6210 GOSUB 4920:GOTO 2270 6300 GOSUB 4900:!DEL 6310 PRINT "Loeschen von Feldern, Spalten" 6320 PRINT "oder Zeilen." 6330 PRINT "von:bis = Bereich eingeben." 6340 PRINT "Bsp.: A4:A4 A4:D4 A4:A8" 6350 PRINT "Es werden Feldeintragungen" 6360 PRINT "und Formeln geloescht." 6370 PRINT " >ET<":GOSUB 4940 6380 GOSUB 4920:GOTO 1680 6400 GOSUB 4900:!RAND 6410 PRINT "Einstellen einer Titelspalte." 6420 PRINT "Eingabe des Spaltenbuchstabens." 6430 PRINT "Diese Spalte bleibt auf dem" 6440 PRINT "Bildschirm stehen." 6445 PRINT "Bei >JUMP< Zielspalte -1":PRINT "eingeben!" 6450 PRINT "Aufheben der Einstellung durch" 6460 PRINT "Eingabe von Leerzeichen ET ." 6470 PRINT " >ET<":GOSUB 4940 6480 GOSUB 4920:GOTO 2360 6500 GOSUB 4900:!FORMAT 6510 PRINT "Eingabe der Anzahl von DezIMAL-" 6520 PRINT "stellen." 6530 PRINT "Eingabe 0 bis 3." 6540 PRINT "Standard ist 2 Stellen." 6550 PRINT "Je Blatt nur ein Format waehlen." 6560 PRINT " >ET<":GOSUB 4940 6570 GOSUB 4920:GOTO 2030 6572 GOSUB 4900:PRINT "Der Druck des Arbeitsblattes" 6574 PRINT "erfolgt jeweils fuer maximal" 6576 PRINT "7 Spalten." 6578 PRINT "Die Abfrage erfolgt von:bis" 6580 PRINT "Bsp.: A0:D16 6582 PRINT " >ET<" 6584 GOSUB 4940 6586 GOSUB 4920:GOTO 1490 6600!OP-RECHNUNG MEHRERE FELDER 6610 FOR AV=BV+1 TO E 6620 X$=MID$(A$,AV,1):IF ASC(X$)<48 AND ASC(X$)<>46 OR ASC(X$)=94 THEN 6636 6630 NEXT AV 6635 IF ASC(X$)>64 AND ASC(X$)<91 OR ASC(X$)>96 THEN 870 6636 IF AV>E THEN 870 6640 S$(1)=LEFT$(A$,AV-1):S$(2)=MID$(A$,AV+1):E(1)=ASC(S$(1)):E(2)=ASC(S$(2)) 6650 IF E(1)>96 THEN E(1)=E(1)-6 6660 IF E(2)>96 THEN E(2)=E(2)-6 6670 FOR CV=1 TO 2:IF E(CV)<59 THEN Z(CV)=VAL(S$(CV)):GOTO 6700 6680! 6690 Z(CV)=VAL(T$(0,E(CV)-64,M)) 6700 NEXT CV 6705 Z(1)=VAL(T$(0,N,M)) 6710 IF X$="/"THEN X$="," 6720 IF X$="^"THEN X$=")" 6730 QQ=ASC(X$)-40 6740 ON QQ GOSUB 6790,6780,6770,6800,6810 6750 IF AV<E THEN BV=AV:GOTO 6610 6760 GOTO 870 6770 T$(0,N,M)=STR$(Z(1)+Z(2)):RETURN 6780 T$(0,N,M)=STR$(Z(1)*Z(2)):RETURN 6790 T$(0,N,M)=STR$(Z(1)^Z(2)):RETURN 6800 T$(0,N,M)=STR$(Z(1)/Z(2)):RETURN 6810 T$(0,N,M)=STR$(Z(1)-Z(2)):RETURN 6900 PRINT AT(25,5);"Neues Arbeitsblatt? (J)/N" 6905 PRINT AT(27,0);"(Bei Neustart >J<," 6906 PRINT AT(28,0);"bei Abbruch GOTO 10 u. >N<)" 6910 I$=INKEY$:IF I$=""THEN 6910 6920 IF I$="N"THEN 930 6930 WINDOW 25,31,0,31:CLS:WINDOW:RETURN 6940 WINDOW 23,23,0,31:CLS:WINDOW:RETURN