1000  COM T$[30],B,B$[42],M,P[6],C[3],D$[9],N,T[7,141]
1001  COM C$[6],O$[6],K,W[6],F,N$[9]
1010  REM
1020  MAT T=ZER
1030  PRINT '10" ","GRADE PACKAGE"'10
1050  GOSUB 9810
1060  PRINT TAB(17);N$;'10
1080  GOSUB 9430
1090  GOSUB 9510
1100  FOR I=1 TO C[2]
1110  IF T[1,I]=-1 THEN 1170
1120  LET T[7,I]=0
1130  FOR J=1 TO B
1140  LET T[7,I]=T[7,I]+T[J,I]*W[J]
1150  NEXT J
1160  LET T[7,I]=T[7,I]*F
1170  NEXT I
1200  CHAIN "$GPACC"
9400  REM
9405  FILES CLSFIL
9407  REM
9430  READ #1,1
9431  READ #1;T$,B,B$,M
9432  MAT  READ #1;P,C
9433  READ #1;D$,N
9434  FOR Z1=1 TO 6
9435  FOR Z2=1 TO N
9436  READ #1;T[Z1,Z2]
9437  NEXT Z2
9438  NEXT Z1
9440  READ #1,1
9442  RETURN 
9500  REM
9510  LET F=0
9511  IF M=2 THEN 9530
9512  FOR Z1=1 TO B
9513  LET W[Z1]=P[Z1]
9514  LET F=F+T[Z1,N]*W[Z1]
9515  NEXT Z1
9520  IF F=0 THEN 9525
9521  LET F=100/F
9525  RETURN 
9527  REM
9530  FOR Z1=1 TO B
9531  LET W[Z1]=0
9532  IF T[Z1,N]=0 THEN 9535
9533  LET W[Z1]=P[Z1]/T[Z1,N]
9534  LET F=F+P[Z1]
9535  NEXT Z1
9537  GOTO 9520
9800  REM
9805  DIM M[12],M$[36],Y$[10]
9808  REM
9810  LET M[1]=M[3]=M[5]=M[7]=M[8]=M[10]=M[12]=31
9811  LET M[4]=M[6]=M[9]=M[11]=30
9812  LET M[2]=29
9815  LET M$="JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
9817  LET Y$="0123456789"
9820  REM
9821  LET Z1=TIM(3)
9822  IF Z1-INT(Z1/4)*4=0 THEN 9825
9823  LET M[2]=28
9825  LET Z8=TIM(2)
9830  FOR Z2=1 TO 12
9831  IF Z8 <= M[Z2] THEN 9840
9832  LET Z8=Z8-M[Z2]
9835  NEXT Z2
9838  REM
9840  LET Z3=INT(Z8/10)
9841  IF Z3=0 THEN 9844
9842  LET N$[1]=Y$[Z3+1,Z3+1]
9843  GOTO 9845
9844  LET N$[1]=" "
9845  LET Z3=Z8-Z3*10
9846  LET N$[2]=Y$[Z3+1,Z3+1]
9847  LET N$[3]=" "
9848  LET N$[4]=M$[3*Z2-2,3*Z2]
9849  LET N$[7]=" "
9850  LET Z3=INT(Z1/10)
9851  LET N$[8]=Y$[Z3+1,Z3+1]
9852  LET Z3=Z1-Z3*10
9853  LET N$[9]=Y$[Z3+1,Z3+1]
9855  RETURN 
9999  END 
