10 REM-PROGRAM NAME: "STU707" 30 REM-PROGRAM ADDS CREDITS FOR COURSES COMPLETED TO CUMULATIVE TOTAL IN EACH STUDENT RECORD 50 OPEN "DF:STUDNT.MST" AS FILE 1 70 DIM #1, S1$(500)=511 90 OPEN "CR:" FOR INPUT AS FILE 2 110 FIELD #2, 80 AS C$ 115 OPEN "LP:" FOR OUTPUT AS FILE 3 130 ON ERROR GOTO 1130 132 LET A$=" " 135 LET T0=166 !" F" 138 LET T1=164 ! " D" 140 LET T2=163 ! " C" 145 LET T3=162 ! " B" 147 LET T4=161 ! " A" 160 GET #2 170 IF LEFT(C$,5)<>I$ THEN GOSUB 710 175 LET V$=MID(C$,33,3) 190 LET F$=MID(C$,64,1) !FINAL GRADE 191 IF F$="F" OR F$="X" OR F$="I" THEN GOTO 330 192 IF F$<>" " THEN GOTO 250 193 IF MID(C$,61,1)="F" THEN GOTO 330 194 IF MID(C$,63,1)="F" THEN GOTO 330 210 LET V$=MID(C$,33,3) !COURSE CODE NUMBER 230 IF MID(C$,60,4)=SPACE$(4) THEN GOTO 650 250 GOSUB 1270 251 LET T8=0: LET T9=0 252 LET G8$=MID(C$,60,4) 253 LET G9$=F$+SPACE$(3) 254 CHANGE G8$ TO G8 255 CHANGE G9$ TO G9 260 FOR I%=1 TO 4 261 LET T9=T9+G9(I%) 262 LET T8=T8+G8(I%) 263 NEXT I% 264 IF T8=T9 OR T8=T1 OR T8=T2 OR T8=T3 OR T8=T4 THEN GOTO 640 266 IF V$="002" THEN GOTO 330 !OFFICE PRACTICE,DONT COUNT 270 IF LEFT(V$,1)="0" GOTO 350 ! 0=PHYS ED 271 IF V$="999" THEN GOTO 330 !DONT COUNT DRIVER ED 275 IF V$=" " GOTO 2150 290 LET V=VAL(LEFT(V$,1)) !PICK UP 1ST DIGIT OF COURSE# 310 ON V GOTO 390,450,530,570,610,530,530,530,530 330 PRINT #3,SPACE$(15)+V$+" "+MID(C$,38,9)+" "+ MID(C$,60,4)+" "+MID(C$,64,1) 331 GOTO 160 350 LET P=P+F !ADD IN CREDIT FOR PHYS ED 370 GOTO 330 390 LET E=E+F !ADD IN CREDIT FOR ENGLISH COURSE 410 GOTO 330 430 IF LEFT(V$,2)="23" GOTO 490 !BR IF AMERICAN HISTORY 450 LET S=S+F !ADD IN CREDITS FOR SOCIAL STUDIES 470 GOTO 330 530 LET O=O+F !OTHERS 550 GOTO 330 570 LET M=M+F !ADD IN CREDITS FOR MATH 590 GOTO 330 610 LET C=C+F !ADD IN CREDITS FOR SCIENCE 630 GOTO 330 640 LET F=1 641 GOTO 270 650 PRINT "NO GRADE FOR COURSE #";V$; 670 PRINT " STUDENT #"; I$ 690 GOTO 150 710 IF I$=SPACE$(5) THEN GOTO 1115 711 PRINT #3, SPACE$(78) 730 LET X9$=NUM$(P) 750 GOSUB 2660 770 LET P$=X1$ 790 LET X9$=NUM$(E) !ENGLISH CREDITS 810 GOSUB 2660 830 LET E$=X1$ 850 LET X9$=NUM$(S) !SOCIAL STUDIES CREDIT 870 GOSUB 2660 890 LET S5$=X1$ 950 LET X9$=NUM$(O) !CREDIT FOR OTHER COURSES 970 GOSUB 2660 990 LET O$=X1$ 1010 LET X9$=NUM$(M) !CREDIT FOR MATH 1030 GOSUB 2660 1050 LET M$=X1$ 1070 LET X9$=NUM$(C) !CREDIT FOR SCIENCE 1090 GOSUB 2660 1110 LET C1$=X1$ 1111 LET S1$(J%)=LEFT(S$,165)+E$+S5$+C1$+M$+P$+A$+O$+ MID(S$,180,332) 1113 IF ERR=11 GOTO 1120 1115 LET I$=LEFT(C$,5) 1116 LET J%=J%+1 1117 IF LEFT(S1$(J%),5)>I$ THEN GOTO 2460 1118 IF LEFT(S1$(J%),5)="910" THEN 2310 2150 PRINT "UNDEFINED COURSE CODE";V$,K$ 2170 STOP 2175 GOTO 270 2190 LET F=1 2210 GOTO 2450 2230 LET F=4 2250 GOTO 2450 2270 LET F=8 2290 GOTO 2450 2310 LET F=2 2330 GOTO 2450 2350 LET F=5 2370 GOTO 2450 2390 LET F=6 2410 GOTO 2450 2430 LET F=9 2450 RETURN 2460 PRINT "CANNOT FIND MASTER FOR ";I$ 2462 LET X%=0 2465 GET #2 2466 IF I$=LEFT(C$,5) THEN GOTO 2465 2468 LET I$=LEFT(C$,5) 2470 GOTO 1117 2475 GOTO 190 2500 LET X%=1 2505 LET J%=1 2510 GOTO 1117 2600 GOSUB 710 2610 RESUME 2800 2660 LET N=1 2665 LET A6=LEN(X9$) 2670 LET A6=A6-1 2675 IF A6>2 THEN GOTO 2690 2678 LET X1$=MID(X9$,N,A6) 2680 RETURN 2690 LET N=N+1 2695 GOTO 2670 2800 CLOSE 1,2 2810 END