1  REM  ****  HP BASIC PROGRAM LIBRARY  ******************************
2  REM
3  REM        ESRT1:  CTC PAYROLL PROGRAM, PART 6 OF 34
4  REM
5  REM        36213  REV B  6/73
6  REM
7  REM  ****  CONTRIBUTED PROGRAM  ***********************************
8  REM
9  REM
10  DIM E$[30],T$[30],Z$[26]
11  DIM E[20],O[100],P[100],Q[100],R[100],S[100],T[100],U[100]
12  DIM V[100],W[100],X[100],Y[100],Z[100],G[100]
13  MAT O=ZER
14  MAT P=ZER
15  MAT Q=ZER
16  MAT R=ZER
17  MAT S=ZER
18  MAT T=ZER
19  MAT U=ZER
20  MAT V=ZER
21  MAT W=ZER
22  MAT X=ZER
23  MAT Y=ZER
24  MAT Z=ZER
50  Z$="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
100  FILES E1,E2,EAUX,ESRTF
200  READ E9,E7
210  DATA 2,17
220  READ #(E9+1),1;A9,M9
230  C0=C1=C2=C3=C4=C5=C6=C7=C8=C9=D1=D2=0
400  FOR I1=1001 TO M9
410  GOSUB 3200
420  READ #N,R1;E$,X
430  IF X=-1 THEN 495
440  GOSUB 3000
495  NEXT I1
500  T=C0+C1+C2+C3+C4+C5+C6+C7+C8+C9+D1+D2
510  PRINT T
520  PRINT #(E9+2);T
530  J9=C0
540  MAT G=O
550  GOSUB 1000
560  J9=C1
570  MAT G=P
580  GOSUB 1000
590  J9=C2
595  MAT G=Q
600  GOSUB 1000
605  J9=C3
610  MAT G=R
615  GOSUB 1000
620  J9=C4
625  MAT G=S
630  GOSUB 1000
640  J9=C5
650  MAT G=T
660  GOSUB 1000
670  J9=C6
680  MAT G=U
690  GOSUB 1000
695  J9=C7
700  MAT G=V
710  GOSUB 1000
720  J9=C8
730  MAT G=W
740  GOSUB 1000
750  J9=C9
760  MAT G=X
770  GOSUB 1000
780  J9=D1
790  MAT G=Y
800  GOSUB 1000
810  J9=D2
820  MAT G=Z
830  GOSUB 1000
840  PRINT #(E9+2); END 
850  END 
1000  IF G[1]=0 THEN 1220
1005  FOR J1=2 TO J9
1010  FOR J2=J1 TO 2 STEP -1
1015  I1=G[J2]
1020  GOSUB 3200
1025  READ #N,R1;E$
1030  I1=G[J2-1]
1035  GOSUB 3200
1040  READ #N,R1;T$
1045  IF E$ >= T$ THEN 1070
1050  X=G[J2]
1055  G[J2]=G[J2-1]
1060  G[J2-1]=X
1065  NEXT J2
1070  NEXT J1
1075  FOR I2=1 TO J9
1080  I1=G[I2]
1085  GOSUB 3200
1090  READ #N,R1;E$
1095  PRINT I2,G[I2];E$
1097  PRINT #(E9+2);G[I2]
1100  NEXT I2
1220  RETURN 
3000  FOR Z=1 TO 26
3010  IF E$[1,1]=Z$[Z,Z] THEN 3060
3020  NEXT Z
3030  C0=C0+1
3040  O[C0]=I1
3050  RETURN 
3060  GOTO Z OF 3030,3090,3100,3110,3110,3110,3120,3120,3120,3130
3070  GOTO Z-10 OF 3130,3130,3140,3140,3140,3150,3150,3150,3160,3170
3080  GOTO Z-20 OF 3180,3180,3180,3190,3190,3190
3090  C1=C1+1
3095  P[C1]=I1
3097  RETURN 
3100  C2=C2+1
3105  Q[C2]=I1
3107  RETURN 
3110  C3=C3+1
3115  R[C3]=I1
3117  RETURN 
3120  C4=C4+1
3125  S[C4]=I1
3127  RETURN 
3130  C5=C5+1
3135  T[C5]=I1
3137  RETURN 
3140  C6=C6+1
3145  U[C6]=I1
3147  RETURN 
3150  C7=C7+1
3155  V[C7]=I1
3157  RETURN 
3160  C8=C8+1
3165  W[C8]=I1
3167  RETURN 
3170  C9=C9+1
3175  X[C9]=I1
3177  RETURN 
3180  D1=D1+1
3185  Y[D1]=I1
3187  RETURN 
3190  D2=D2+1
3195  Z[D2]=I1
3197  RETURN 
3200  R=I1-1000
3210  FOR I=1 TO E9
3220  IF R <= I*200 THEN 3260
3230  NEXT I
3240  PRINT '7'7"M9>"1000+E9*200
3250  END 
3260  N=I
3270  R1=R-(I-1)*200
3280  RETURN 
9999  END 
