10 COM X$[7],Y$[7],G$[7],S,U1 12 REM 13 REM FINDIT: FILE INFORMATION DIALOGUE TECHNIQUE 14 REM UPDATE: PART 3 OF 8 15 REM 36250C, 6/74 16 REM 20 DIM E[99],I[121],J[121],R[16],I$[72],O$[72] 30 DIM A$[72],B$[72],C$[52],D$[10],E$[72],F$[72],H$[72] 40 C$="etoanirshdlcwumfygpbvkxqjzETOANIRSHDLCWUMFYGPBVKXQJZ" 50 D$="0123456789" 60 FILES *,*,*,* 70 ASSIGN X$,1,X 80 ASSIGN X$,3,X 90 ASSIGN Y$,2,X 100 MAT READ #1,1;R 110 A3=L2=0 120 PRINT "OPERATION? "; 130 K=L1=N1=U=0 140 GOSUB 1480 150 GOTO A1 OF 120,190,120,120 160 IF A$[1,2]="MO" THEN 210 170 IF A$[1,2]="AD" THEN 3050 180 IF A$[1,2]="DE" THEN 4180 190 PRINT "**TYPE 'MODIFY', 'ADD', OR 'DELETE'." 200 GOTO 120 210 REM--**MODIFY ROUTINE** 220 U=1 230 PRINT " SAME ELEMENTS? "; 240 A3=B1=K=L1=N1=0 250 GOSUB 1480 260 GOTO A1 OF 120,230,230,120,230,210,3050,4180 270 IF A$[1,1]="N" THEN 590 280 IF A$[1,1]="Y" THEN 310 290 PRINT "**TYPE 'YES' OR 'NO'." 300 GOTO 230 310 B1=1 330 PRINT TAB(2+2*B1),"ELEMENTS:" 335 E0=R[16] 340 MAT E=ZER 350 B4=K=N1=0 360 PRINT "?";TAB(2+2*B1); 370 GOSUB 1480 380 GOTO A1+1 OF 410,390,360,340,360,580,210,3050,4180 390 IF K THEN 330 400 GOTO B1+1 OF 590,230 410 GOSUB 2420 420 IF A1=2 THEN 360 430 IF Y#E0 THEN 510 435 READ #1,3 440 GOSUB 6400 450 PRINT "**THE ELEMENT '"B$"' MAY NOT BE MODIFIED DIRECTLY." 460 PRINT " CONSULT FINDIT MANUAL FOR INSTRUCTIONS." 470 PRINT 480 GOTO 330 510 K=K+1 520 E[K]=Y 530 IF E[K]=R[3] THEN 580 540 IF K=1 THEN 360 550 IF E[K]>E[K-1] THEN 360 560 PRINT "**LAST ELEMENT OUT OF SEQUENCE - BEGIN AGAIN.";LIN(1) 570 GOTO 330 580 IF NOT B1 THEN 720 590 PRINT LIN(1),"ID#? "; 600 B2=K=N1=R=S2=0 610 U=1 620 REM--LOCATE RECORD 630 GOSUB 1480 640 GOTO A1+1 OF 660,650,590,650,590,590,210,3050,4180 650 GOTO B1+1 OF 230,330 660 F$=A$ 670 GOSUB 4640 675 A5=B0 680 IF A1=2 THEN 590 690 R4=R 700 IF NOT B1 THEN 330 720 N1=K=U=1 730 N2=2 740 A2=B4=L2=L4=S2=0 750 READ #1,R;Z3,Z4 760 PRINT #2,S;Z3,Z4 770 READ #3,3 780 FOR I=1 TO R[3] 790 IF K1 THEN 870 850 E=E[K] 860 GOTO 880 870 E=E[K]-E[K-1] 880 FOR I4=1 TO E 890 READ #3;E$ 900 NEXT I4 910 PRINT E$": "; 920 PRINT I$;SPA(2);"?"; 930 GOSUB 1480 940 GOTO A1+1 OF 990,960,910,720,950,980,210,3050,4180 950 GOTO L1+1 OF 910,920 960 IF K>1 THEN 720 970 GOTO B1+1 OF 330,590 980 A$=I$ 990 IF E[K]#1 OR A1=5 THEN 1130 1000 H$=A$ 1010 F$=I$ 1020 B4=1 1030 U=2 1040 GOSUB 4640 1050 IF A1=2 THEN 590 1060 A4=B0 1130 K=K+1 1140 I$=A$ 1160 GOSUB 2980 1170 IF A2=1 THEN 720 1180 PRINT #N2;I$ 1190 NEXT I 1200 IF S2 THEN 1360 1210 IF NOT B4 THEN 1290 1220 U=2 1225 A$=H$ 1230 I0=A4 1235 GOSUB 4650 1240 IF A1 THEN 1460 1245 GOSUB 5680 1250 A$=F$ 1260 U=3 1270 I0=A5 1275 GOSUB 4650 1280 GOSUB A1=0 OF 5680 1290 READ #2,S;Z3,Z4 1300 GOSUB 2780 1310 R=R4 1320 PRINT #1,R;Z3,Z4 1330 N1=2 1340 N2=S2=1 1350 GOTO 780 1360 K=1 1370 S2=0 1460 GOSUB 2950 1470 GOTO 590 1480 REM--INPUT ROUTINE 1490 A1=0 1500 T1=255 1510 ENTER T1,Y,A$ 1520 PRINT 1530 IF Y#-256 THEN 1575 1540 IF T1=15 THEN 9990 1550 PRINT '7'7'7"**ARE YOU STILL THERE?"; 1560 T1=15 1570 GOTO 1510 1575 IF T1=15 THEN 2020 1580 IF A$="" THEN 2380 1610 FOR Z=1 TO LEN(A$) 1620 IF A$[Z,Z]>" " THEN 1700 1630 IF Z#1 THEN 1655 1640 A$=A$[2] 1650 GOTO 1610 1655 IF A$[Z,Z]<" " THEN 1670 1660 IF A$[Z+1,Z+1]>" " THEN 1700 1670 IF Z>LEN(A$) THEN 1700 1680 A$[Z]=A$[Z+1] 1690 GOTO 1620 1700 IF A$[Z,Z] <= "^" THEN 1760 1710 FOR Z1=1 TO 26 1720 IF A$[Z,Z]#C$[Z1,Z1] THEN 1750 1730 A$[Z,Z]=C$[Z1+26,Z1+26] 1740 GOTO 1760 1750 NEXT Z1 1760 NEXT Z 1765 IF LEN(A$)=0 THEN 2400 1770 IF A$[LEN(A$),LEN(A$)]>" " THEN 1820 1780 A$=A$[1,LEN(A$)-1] 1820 IF A$[1,2]="//" THEN 1830 1825 RETURN 1830 IF A$[3,4]#"ER" THEN 1900 1840 IF K>N1 THEN 1870 1850 A1=1 1860 RETURN 1870 PRINT "**BEGIN AGAIN.",LIN(1) 1880 A1=3 1890 RETURN 1900 IF A$[3,4]="ST" THEN 9990 1910 IF A$[3,4]#"HE" THEN 2040 1920 IF NOT U THEN 1950 1930 GOSUB 6460 1940 GOTO 2020 1950 PRINT "**YOU MUST FIRST SELECT AN OPERATION TO RECEIVE INSTRUCTIONS." 1960 GOTO 2020 1970 PRINT 1980 IF A3 THEN 2010 1990 GOSUB 6460 2000 GOSUB 2020 2010 GOSUB A3 OF 6550,6800 2020 A1=2 2030 RETURN 2040 IF A$[3,4]#"EL" THEN 2090 2050 L2=1 2060 PRINT 2070 GOSUB 2630 2080 GOTO 2020 2090 IF A$[3,4]#"PR" THEN 2130 2100 L1=0 2110 A1=4 2120 RETURN 2130 IF A$[3,4]#"NO" THEN 2210 2140 L1=1 2150 IF NOT K THEN 2020 2160 A1=4 2170 PRINT "INPUT THE VALUE FOR '"E$"' AND CONTINUE." 2180 RETURN 2210 IF A$[3,4]#"DU" THEN 2330 2220 IF U=2 OR R=0 THEN 2330 2230 PRINT 2240 READ #1,R;Z,Z,B$ 2250 PRINT "#";B$;SPA(3); 2260 FOR J1=1 TO R[3]-1 2270 READ #1;B$ 2280 PRINT B$;SPA(3); 2290 NEXT J1 2300 PRINT LIN(1) 2310 IF U=3 THEN 2020 2320 GOTO N1+1 OF 1940,1870 2330 IF A$[3,4]#"MO" THEN 2340 2332 A1=6 2334 RETURN 2340 IF A$[3,4]#"AD" THEN 2350 2342 A1=7 2344 RETURN 2350 IF A$[3,4]#"DE" THEN 2354 2351 A1=8 2352 RETURN 2354 IF A$[3,4]="SE" THEN 2360 2355 PRINT "**INVALID COMMAND." 2356 GOTO 2020 2360 PRINT LIN(2) 2370 CHAIN "$SEARCH" 2380 A1=5 2390 IF U#2 THEN 2410 2400 PRINT "**SUPPLY A VALUE." 2405 A1=2 2410 RETURN 2420 REM--ELEMENT NUMBER INPUT TO NUMERIC CONVERSION 2430 Y=0 2440 IF A$[1,2]="//" THEN 2620 2450 IF A$[1,1]>"9" THEN 2620 2460 IF LEN(A$)>2 THEN 2580 2470 FOR I2=1 TO LEN(A$) 2480 FOR J2=1 TO 10 2490 IF A$[1,1]="0" THEN 2580 2500 IF A$[I2,I2]>"9" THEN 2580 2510 IF A$[I2,I2]<"0" THEN 2580 2520 IF A$[I2,I2]#D$[J2,J2] THEN 2540 2530 Y=10*Y+J2-1 2540 NEXT J2 2550 NEXT I2 2560 IF Y <= R[3] THEN 2620 2580 I=R[3] 2582 GOSUB 7200 2584 PRINT "**USE AN ELEMENT NUMBER OF 1 TO "A$"." 2590 A1=2 2600 RETURN 2620 IF Y THEN 2850 2630 READ #1,3 2640 FOR Y=1 TO R[3] 2650 READ #1;B$ 2660 IF NOT L2 THEN 2690 2670 PRINT Y;B$ 2680 GOTO 2700 2690 IF A$=B$ THEN 2850 2700 NEXT Y 2710 IF NOT L2 THEN 2750 2720 L2=0 2730 PRINT 2740 RETURN 2750 PRINT "**BAD ELEMENT NAME." 2760 GOTO 2590 2780 ASSIGN G$,4,X 2800 IF X THEN 2860 2810 READ #4,1 2820 IF TYP(-4)<3 THEN 2900 2830 PRINT #4,1;S 2840 READ #4,2 2850 RETURN 2860 ASSIGN Y$,4,X 2870 ENTER 2,Z,Z 2890 GOTO 2780 2900 READ #4;Z 2910 PRINT "**PORT #"Z"USED THE BREAK KEY DURING UPDATE. SEE YOUR FILE MANAGER." 2920 STOP 2930 RETURN 2950 PRINT #4,1; END 2960 ASSIGN Y$,4,X 2970 RETURN 2980 L3=LEN(A$) 2990 L4=L4+(1+INT((L3+1)/2)) 3000 IF L4 <= 252 THEN 3040 3010 PRINT "**YOUR LAST INPUT OVERFLOWS THE RECORD. BEGIN AGAIN AND" 3020 PRINT " ABBREVIATE WHERE POSSIBLE.";LIN(1) 3030 A2=1 3040 RETURN 3050 REM--**ADD ROUTINE** 3060 A3=R=0 3070 PRINT TAB(2),"INPUT THE VALUES:";LIN(1) 3080 MAT READ #1,1;R 3082 U=0 3084 K=R[4]-R[1] 3086 IF K >= 0 THEN 3120 3088 GOSUB 6060 3090 IF (I2+K) >= 0 THEN 3120 3100 PRINT '7'7'7"NO MORE FILE SPACE. SEE FILE MANAGER.";LIN(-2) 3110 GOTO 9990 3120 U=2 3130 K=S2=1 3140 N1=0 3150 PRINT #2,S 3160 READ #3,3 3170 A2=L2=L4=0 3180 FOR I=1 TO R[3] 3190 IF I=1 THEN 3210 3200 K=2 3210 READ #3;E$ 3220 IF L1 THEN 3250 3230 PRINT E$": "; 3240 GOTO 3260 3250 PRINT "?"; 3260 GOSUB 1480 3270 GOTO A1+1 OF 3290,120,3220,3150,3280,3220,210,3050,4180 3280 GOTO L1+1 OF 3230,3250 3290 GOSUB 2980 3300 IF A2 THEN 3070 3310 IF I#1 THEN 3380 3320 IF A$<"0" THEN 3340 3330 IF A$[1,1]<":" THEN 3360 3340 PRINT "**ILLEGAL ID NUMBER." 3350 GOTO 3220 3360 GOSUB 4640 3370 IF A1=2 THEN 3120 3375 I$=A$ 3380 IF I#R[16] THEN 3400 3390 O$=A$ 3400 PRINT #2;A$ 3410 NEXT I 3415 GOSUB 2780 3416 MAT READ #1,1;R 3418 K=R[4]-R[1] 3420 GOSUB 6060 3422 IF NOT A1 THEN 3430 3424 GOSUB 2950 3426 GOTO 3100 3430 R=F2 3450 IF R[5] THEN 3600 3460 Z1=Z2=0 3470 R1=R 3480 READ #2,S 3490 GOSUB 4040 3500 PRINT #1,7;0,R 3510 PRINT #1,9;0,R 3520 R[5]=1 3530 MAT PRINT #1,1;R 3540 GOTO 3950 3600 I0=B0 3605 A$=I$ 3610 GOSUB 4650 3615 IF A1 THEN 3950 3620 GOSUB 5680 3630 A$=O$ 3640 GOSUB 4670 3670 READ #2,S 3680 IF K3 OR B>9 THEN 3740 3690 F5=0 3700 MAT READ #1,1;R 3710 R[2]=R 3720 MAT PRINT #1,1;R 3730 GOTO 3780 3740 F5=I[K3] 3750 IF K30)+1 OF 4580,4460 4410 R1=Z4 4420 GOSUB 3980 4430 Z1=Z3 4440 GOSUB 4010 4450 IF NOT Z3 THEN 4520 4460 R1=Z3 4470 GOSUB 3980 4480 Z2=Z4 4490 GOSUB 4010 4520 GOSUB 5680 4530 A$=O$ 4540 GOSUB 4670 4550 IF B THEN 4570 4560 B=I0 4570 GOSUB 5680 4580 PRINT #1,R 4590 GOSUB 6060 4600 GOSUB 2950 4605 IF A1 THEN 4325 4610 PRINT "**DELETED**" 4620 GOTO 4180 4640 B0=I0=7 4650 E0=1 4660 GOTO 4710 4670 B0=I0=9 4680 E0=R[16] 4710 B=K1=K4=K5=K6=K7=S1=0 4720 K2=K3=121 4730 A=LEN(A$) 4735 MAT I=ZER 4740 K7=(U=3 AND E0#1) 4760 READ #1,I0;F 4770 IF TYP(-1)#4 THEN 4830 4780 IF F THEN 5020 4790 IF U#2 THEN 5040 4800 K3=1 4810 I[1]=K5=0 4820 RETURN 4830 READ #1;F3 4840 READ #1,F3;Z,Z 4850 GOSUB 6400 4890 GOSUB 5560 4900 GOTO S1 OF 5040,5000 4910 GOTO U OF 4970,4920,4930 4920 IF E0=1 THEN 5500 4930 IF K7 THEN 5210 4935 B=I0 4940 K3=1 4950 GOTO 5080 4970 R=F3 4980 B2=1 4990 RETURN 5000 B=B0=I0 5010 IF F=0 THEN 5040 5020 I0=F 5030 GOTO 4760 5040 IF K7 THEN 5210 5045 IF B THEN 5080 5050 B=I0 5060 IF U#2 THEN 5310 5070 K3=0 5080 GOSUB 5085 5082 GOTO 5150 5085 READ #1,B;F 5090 FOR K2=1 TO 121 5100 K5=K2 5110 READ #1;I[K2] 5112 IF NOT K7 THEN 5120 5114 IF I[K2]#R THEN 5120 5116 K6=K2 5120 IF TYP(-1)=4 THEN 5140 5130 NEXT K2 5140 K2=K2+1 5145 RETURN 5150 IF NOT K3 THEN 5550 5160 K3=INT((K2-K1)/2)+K1 5180 IF (K3-K4)#0 THEN 5330 5190 GOTO U OF 5310,5550 5200 IF E0=1 THEN 5310 5210 B=B+9* NOT B 5220 GOSUB 5085 5230 IF K6 THEN 5260 5240 B=F 5250 GOTO (B#0)+1 OF 5520,5220 5260 K3=K6 5270 RETURN 5310 PRINT "**NO SUCH ID NUMBER." 5320 GOTO 5520 5330 READ #1,I[K3];Z3,Z4 5340 GOSUB 6400 5390 GOSUB 5560 5410 GOTO S1+1 OF 5480,5430,5450 5430 K2=K3 5440 GOTO 5460 5450 K1=K3 5460 K4=K3 5470 GOTO 5160 5480 IF U#2 THEN 5540 5490 IF E0#1 THEN 5550 5500 PRINT "**DUPLICATE ID." 5510 PRINT 5520 A1=2 5530 RETURN 5540 R=I[K3] 5550 RETURN 5560 D=D1=0 5562 IF A$[1,1]>"9" THEN 5590 5564 IF A$="-" THEN 5590 5566 IF A$[1,1]#"-" THEN 5570 5568 D=1 5570 IF B$[1,1]#"-" THEN 5574 5572 D1=1 5574 D2=LEN(A$)-D 5576 D3=LEN(B$)-D1 5578 IF D2D3 THEN 5650 5590 IF A$B$ THEN 5650 5610 S1=0 5620 RETURN 5630 S1=1+D1 5640 RETURN 5650 S1=2-D 5660 RETURN 5680 Y2=0 5690 IF B THEN 5720 5700 M0=I0 5710 GOTO 5730 5720 M0=B 5730 IF U=3 THEN 5800 5740 Y2=K5>119 5800 IF Y2 THEN 5830 5810 READ #1,M0;F2 5820 GOTO 5890 5830 GOSUB 6060 5890 PRINT #1,M0;F2 5900 FOR I1=1 TO K5 5910 IF U=3 AND I1=K3 THEN 6010 5920 IF K3 OR I1>1 THEN 5940 5930 PRINT #1;R 5940 PRINT #1;I[I1] 5950 IF NOT Y2 OR I1#60 THEN 5990 5960 PRINT #1,F2;F 5980 Y2=0 5990 IF U=3 OR I1#K3 THEN 6010 6000 PRINT #1;R 6010 NEXT I1 6012 IF K5>1 OR U#3 THEN 6034 6014 B=B0 6016 GOSUB 5085 6018 PRINT #1,M0 6020 MAT READ #1,B;I[K2] 6022 I[1]=F2 6024 MAT PRINT #1,B;I 6026 R0=R 6028 R=M0 6030 GOSUB 6060 6032 R=R0 6034 RETURN 6060 M1=8 6070 READ #1,M1;F2 6080 IF NOT F2 THEN 6102 6082 IF U THEN 6090 6084 I2=2 6086 RETURN 6090 B1=M1 6095 M1=F2 6100 GOTO 6070 6102 GOSUB 6110 6104 GOTO 6150 6110 FOR I2=1 TO 121 6120 IF TYP(-1)=4 THEN 6142 6130 READ #1;J[I2] 6140 NEXT I2 6142 I2=I2-1 6145 RETURN 6146 FOR I3=1 TO I2 6147 PRINT #1;J[I3] 6148 NEXT I3 6149 RETURN 6150 IF NOT U THEN 6176 6152 IF U=2 THEN 6200 6160 IF I2<120 THEN 6180 6162 PRINT #1,R[1];0,R 6164 PRINT #1,M1;R[1] 6168 GOSUB 6146 6170 R[1]=R[1]+1 6175 MAT PRINT #1,1;R 6176 RETURN 6180 PRINT #1;R 6190 RETURN 6200 IF NOT I2 THEN 6262 6220 PRINT #1,M1;F2 6225 F2=J[I2] 6230 I2=I2-1 6240 GOSUB 6146 6250 I2=I3 6260 GOTO 6330 6262 IF M1=8 THEN 6280 6264 F2=M1 6265 READ #1,B1;Z 6266 GOSUB 6110 6267 PRINT #1,B1;0 6270 GOSUB 6146 6280 IF K<0 THEN 6330 6290 F2=R[1] 6300 R[1]=R[1]+1 6310 MAT PRINT #1,1;R 6330 I=K+I2 6335 IF I>100 THEN 6360 6340 IF I>10 AND I/10#INT(I/10) THEN 6360 6345 GOTO I+2 OF 5520,6360 6350 GOSUB 7200 6352 PRINT LIN(-1);"WARNING - ONLY "A$" RECORD"; 6354 IF A$="1" THEN 6358 6356 PRINT "S"; 6358 PRINT " LEFT." 6360 RETURN 6400 IF E0=1 THEN 6442 6405 READ #1;E$ 6410 FOR J0=2 TO E0 6420 READ #1;B$ 6430 NEXT J0 6440 RETURN 6442 READ #1;B$ 6444 RETURN 6460 PRINT 6470 IF A3 THEN 6800 6480 A3=1 6490 GOTO U-1 OF 6520,6540 6500 A$="MODIFY" 6510 GOTO 6550 6520 A$="ADD" 6530 GOTO 6550 6540 A$="DELETE" 6550 PRINT "THE FOLLOWING COMMANDS MAY BE USED DURING '"A$"' OPERATIONS" 6555 PRINT "(YOU MAY ABBREVIATE TO TWO LETTERS):";LIN(1) 6560 PRINT "'//MODIFY', '//ADD', OR '//DELETE' TRANSFERS DIRECTLY TO THE" 6570 PRINT " NAMED OPERATION." 6575 PRINT "'//SEARCH' TRANSFERS DIRECTLY TO THE FILE SEARCH PROGRAM." 6580 PRINT "'//HELP' BRINGS FURTHER INSTRUCTIONS." 6590 PRINT "'//STOP' IMMEDIATELY ENDS THE PROGRAM." 6600 PRINT "'//ERROR' RETURNS TO THE PREVIOUS QUERY." 6610 IF U=3 THEN 6700 6620 PRINT "'//ELEMENTS' PRINTS A LIST OF ELEMENT NAMES." 6630 PRINT "'//NO PROMPT' SUPPRESSES PRINTOUT OF ELEMENT NAMES DURING" 6640 PRINT " INPUT OPERATIONS." 6650 PRINT "'//PROMPT' RESTORES PRINTOUT OF ELEMENT NAMES." 6660 IF U=2 THEN 6710 6670 PRINT "A 'RETURN' ONLY (NO INPUT) IS USED AFTER THE LAST OF A SERIES" 6680 PRINT " OF INPUTS HAS BEEN ENTERED (ELEMENT NAMES, FOR EXAMPLE). IT IS" 6690 PRINT " ALSO USED TO INDICATE THAT THE CURRENT VALUE IS CORRECT" 6695 PRINT " (AS WHEN MODIFYING A RECORD)." 6700 PRINT "'//DUMP' PRINTS THE ENTIRE CONTENTS OF A RECORD." 6710 PRINT 6720 PRINT "DO YOU NEED FURTHER INSTRUCTIONS (YES/NO)?"; 6730 ENTER 255,Y,A$ 6740 PRINT 6750 IF Y=-256 THEN 7120 6760 IF A$[1,1]="N" THEN 7120 6770 IF A$[1,1]#"Y" THEN 6720 6780 PRINT 6790 A3=2 6800 GOTO U OF 6900,7010 6810 PRINT "A RECORD IS DELETED BY FIRST TYPING THE RECORD ID NUMBER." 6820 READ #3,3;A$,A$,A$ 6830 PRINT "THE VALUE FOR THE ELEMENT '"A$"' IS THEN PRINTED. IF THIS VALUE" 6840 PRINT " AGREES WITH THE EXPECTED VALUE, TYPE 'YES' IN RESPONSE." 6850 PRINT "THE MESSAGE '**DELETED**' WILL THEN VERIFY DELETION OF THAT RECORD." 6860 PRINT "IF THE VALUE FOR '"A$"' DOES NOT AGREE, TYPE 'NO'." 6870 PRINT "ANY COMMAND MAY ALSO BE TYPED (INCLUDING '//DUMP', TO EXAMINE" 6880 PRINT " THE CONTENT OF THE RECORD BEFORE TAKING FURTHER ACTION)." 6890 GOTO 7120 6900 PRINT "ANY NUMBER OF ELEMENTS IN A RECORD MAY BE SPECIFIED FOR MODIFYING." 6910 PRINT "THEY MUST BE ENTERED IN INCREASING ORDER." 6920 PRINT "YOU MAY MODIFY THE SAME ELEMENTS FOR A SERIES OF RECORDS" 6930 PRINT " (THEREBY SPECIFYING THE ELEMENTS ONLY ONCE), OR DIFFERENT" 6940 PRINT " ELEMENTS MAY BE MODIFIED FOR EACH RECORD (YOU MUST THEN" 6950 PRINT " RESPECIFY THE ELEMENTS FOR EACH RECORD)." 6960 PRINT "TO CHANGE FROM ONE OF THESE MODES TO THE OTHER, TYPE '//MODIFY'" 6970 PRINT " TO A QUERY AND START AGAIN." 6980 PRINT "USE '//ERROR' TO CORRECT A MISTAKE MADE DURING A SERIES OF INPUTS," 6990 PRINT " AS WHEN INPUTTING ELEMENTS OR VALUES." 7000 GOTO 7120 7010 PRINT "YOU MUST ASSIGN AN ID NUMBER TO EACH NEW RECORD. EACH ID MUST BE" 7015 PRINT " UNIQUE AND MUST BEGIN WITH A DIGIT." 7020 PRINT "YOU MAY THEN INPUT THE VALUES FOR EACH ELEMENT. IF NO VALUE," 7030 PRINT " USE A '-' (DASH)." 7040 PRINT "USE SPECIAL CARE TO AVOID ERRORS AND FOLLOW THE DATA FORM" 7050 PRINT " REQUIREMENTS (IF ANY) PRESCRIBED FOR EACH ELEMENT," 7060 PRINT " ESPECIALLY IN THE USE OF BLANKS, COMMAS, AND DECIMALS." 7070 PRINT "USE '//ERROR' TO BEGIN THE INPUT LIST AGAIN." 7080 PRINT "TYPE A 'CTRL X' TO DELETE A LINE BEING TYPED," 7090 PRINT " OR USE THE 'SHIFT O' KEY TO ERASE CHARACTERS." 7100 PRINT "USE '//NO PROMPT' IF YOU DO NOT WISH THE ELEMENT NAMES" 7110 PRINT " TO BE PRINTED." 7120 PRINT 7130 A1=2 7140 RETURN 7200 REM--NUM-STR 7210 A$="" 7220 J=I/10 7230 I=INT(J) 7235 J=10*(J-I) 7240 A$[1,1]=D$[J+1,J+1] 7250 A$[2]=A$ 7260 IF I THEN 7220 7270 A$=A$[2] 7280 RETURN 9990 CHAIN "$FINDIT",9999 9999 END