5 ! GABLE- GRADE LABEL PROGRAM 50 Q6%=28% !***LABEL LENGTH 28 OR 26 100 !**************OPEN DISK FILES************************** 101 OPEN "**MASTER" AS FILE 1 : DIM# 1 ,M%(100) 120 OPEN "LP:" AS FILE 12 130 OPEN "**LITCLS" AS FILE 2 : DIM# 2 ,C1$( 2222 )=32 140 OPEN "**STINF" AS FILE 3 : DIM# 3 ,S$( 1111 )=32 160 OPEN "**STUDF" AS FILE 5 : DIM# 5 ,L%( 1111 ,2),S%( 1111 ,10),N( 1111 ) 170 OPEN "**OVERF" AS FILE 6 : DIM# 6 ,S0%( 33 ,5) 180 OPEN "**GRADES" AS FILE 10 : DIM# 10 ,G%( 1111 ,10),G0%( 33 ,5),C%( 2222 ) 210 C$=SPACE$(64) 299 !******************************************************* 300 DIM G$(20) 310 READ G$(I) FOR I=1 TO 8 320 DATA " A "," B "," C "," D "," F "," P "," W ","WF " 330 G$(0)=" " : G$(9)=" " : G$(10)=" " : G$(11)=" N " 390 PRINT "STARTED AT-";TIME$(0) 395 INPUT"SEMESTER AND YEAR";T1$ 396 T1$=" "+T1$ 397 INPUT "THE NUMBER OF CLASSES PER LABEL(4 OR 7)";R9% 405 & "DO YOU WANT TO PRINT: 1-UNDERGRADUATES ONLY, 2-GRADUATES ONLY" 406 & " 3-SPECIAL STUDENTS ONLY, 4-ALL STUDENTS"; 410 INPUT W6% 420 INPUT "STARTING DP#";I1 : J%=I1 425 I2,I6=M%(2%) ! MAX # OF STUDENTS 430 GOSUB 5000 ! TEST PRINT FOR ALEIGNMENT 440 INPUT "PRINTING OK";T$ : IF T$<>"YES" THEN 430 499 ! *****LETS GET AFTER IT******** 500 FOR I7=1 TO I6 510 IF S%(J%,1)=0% THEN 530 ! NO COURSES 515 Z5$=MID(S$(J%),30,1) 516 ON W6% GOTO 520,521,522,525 520 IF Z5$< "5" THEN 525% ELSE 530% 521 IF Z5$= "5" THEN 525% ELSE 530% 522 IF Z5$= "6" THEN 525% ELSE 530% 525 GOSUB 5000% ! **** GO PRINT LABEL 530 J%=L%(J%,1) !NEXT POINTER 532 IF J%=0 THEN 9002 533 IF J%=M%(3%) THEN 9002% ! BACK TO THE BEGINNING SO STOP 535 NEXT I7 540 GOTO 9000 ! FINISHED I THOUGHT WE WOULD NEVER MAKE IT 5000 !****LABEL PRINT ROUTINE**************** 5010 T=1 5030 N%=R9% ! NUMBER OF CLASSES PER LABEL 5100 I2%=S%(J%,1)/100% : I1%=S%(J%,1)-I2%*100% 5105 R1%=I1%/N%+1% !#CLASSES/#PER LABEL +1=#LABELS FOR STUDENT 5110 I%=1 5115 FOR R%=1 TO R1% 5120 PRINT #12,TAB(T);LEFT(S$(J%),20);T1$ 5125 PRINT #12 !*** SPACER LINE 5130 FOR R2%=1 TO R9% 5140 IF I%<9 THEN 5200 5145 IF I%>I1% THEN PRINT #12, : GOTO 5750 5150 Q1%=S%(J%,2): C1%=S0%(Q1%,I%-7)/10% 5160 H1%=S0%(Q1%,I%-7)-C1%*10% 5165 G9%=G0%(Q1%,I%-7%) 5170 GOTO 5310 5200 C1%=S%(J%,I%+2)/10% : H1%=S%(J%,I%+2)-C1%*10% 5300 G9%=G%(J%,I%) 5310 IF G9%=12% THEN I%=I%+1% : GOTO 5140% ! NO COUNT 5500 H1=H1% : H1$=NUM$(H1) ! STRING FOR HOURS 5509 !*****NO CREDIT FOR NO WORK-THAT IS HOW SCHOOL IS 5510 IF G9%=5% OR G9%=8% THEN H1$="("+MID(H1$,2,1)+")" 5512 IF G9%=9% OR G9%=10% THEN H1$="("+MID(H1$,2,1)+")" 5514 !** HE IS A QUITER -0 HOURS ** 5515 IF G9%=7% OR G9%=11% THEN H1$=" 0 " 5516 IF I%>I1% THEN PRINT #12, : GOTO 5750 5520 C3$=LEFT(C1$(C1%),Q6%)+" "+G$(G9%)+H1$ 5525 IF I%>I1% THEN PRINT #12 : GOTO 5750 5530 PRINT #12,TAB(T);C3$ ! PRINT ONE CLASS GRADE 5540 IF I%>=I1% THEN 5750 5550 I%=I%+1 5600 NEXT R2% 5700 NEXT R% 5750 !***THRU PRINTING GRADES -FINISH THE LABEL 5760 PRINT #12, FOR R3%=1 TO R9%-R2% 5900 RETURN !ONE DOWN -AND 3199 TO GO******** 9000 !******ITS ALL OVER BUT THE SHOUTING!!!!!!*********** 9002 PRINT "STOPPED AT-";TIME$(0) 9005 CLOSE 1,2,3,5,6,7,10,12 9010 END