10  COM P9,P8,P,T1,T[30],R[30],A$[18],C$[36],A[80],B[80],N[80],M[80]
20  COM I2,E$[6],D$[18],S$[26],T7,T8,T9
25  REM HP CONTRIBUTED LIBRARY, 2/75, 6 PROGRAMS:  ATG, ATGE, ATGIB,
26  REM ATGM, ATGM1, ATGW.
30  DIM E[30],F[30],H[30],S[30],U[30],R$[3]
40  DEF FNR()=(INT(*100+.5))/100
50  IF P9=11 THEN 940
60  PRINT '10"DO YOU WISH TO"
70  PRINT "1 - CORRECT YOUR TRANSACTION DATA"
80  PRINT "2 - STOP"
90  INPUT R
100  IF R=1 THEN 130
110  IF R#2 THEN 60
120  STOP 
130  PRINT '10"YOU ORIGINALLY SAID THAT THIS WAS PROBLEM ";P9;"- ";P
140  PRINT "IS THAT CORRECT (Y/N) ";
150  INPUT R$
160  IF R$="Y" THEN 210
170  PRINT "WHAT IS THE CHAPTER NUMBER ";
180  INPUT P9
190  PRINT "WHAT IS THE PROBLEM NUMBER ";
200  INPUT P
210  PRINT '10"YOU ALSO SAID THAT THERE WERE ";T1;"TRANSACTIONS"
220  PRINT "IS THAT CORRECT (Y/N) ";
230  INPUT R$
240  IF R$="Y" THEN 330
250  PRINT "IN THAT CASE IT IS BETTER TO START OVER"
260  PRINT "HOW MANY STARTING TRANSACTION ENTRIES ARE THERE ";
270  INPUT T1
280  T7=T1
290  T8=T9=0
300  IF P9>6 THEN 320
310  CHAIN "ATGM"
320  CHAIN "ATGM1"
330  PRINT '10"DO YOU"
340  PRINT "1 - KNOW WHICH ENTRY(S) TO CORRECT"
350  PRINT "2 - WISH TO VIEW ALL ENTRIES AND CORRECT THEM AS YOU GO"
360  INPUT R
370  IF R=2 THEN 510
380  IF R#1 THEN 330
390  PRINT '10"WHAT IS THE ENTRY'S NUMBER ";
400  INPUT I
410  GOSUB 540
420  PRINT '10"DO YOU WISH TO"
430  PRINT "1 - TRY ANOTHER"
440  PRINT "2 - VIEW ALL ENTRIES"
450  PRINT "3 - STOP CORRECTIONS NOW"
460  INPUT R
470  IF R=1 THEN 390
480  IF R=2 THEN 510
490  IF R=3 THEN 860
500  GOTO 420
510  FOR I=1 TO T1
520  GOSUB 540
530  GOTO 840
540  IF P9<7 THEN 570
550  PRINT '10"TRANSACTION # ";I;
560  GOTO 590
570  I1=I+T1/2
580  PRINT '10"DEBIT # ";I
590  PRINT "ACCOUNT # ";M[I];" AMOUNT = ";B[I]
600  PRINT "ARE THEY CORRECT (Y/N) ";
610  INPUT R$
620  IF R$="Y" THEN 700
630  IF R$#"N" THEN 600
640  PRINT "ACCOUNT # ";
650  INPUT M[I]
660  PRINT "AMOUNT ";
670  INPUT B[I]
680  PRINT "FOR YOUR VALIDATION - ";
690  GOTO 590
700  IF P9>6 THEN 830
710  PRINT '10"CREDIT # ";I
720  PRINT "ACCOUNT # ";M[I1];" AMOUNT = ";B[I1]
730  PRINT "ARE THEY CORRECT (Y/N) ";
740  INPUT R$
750  IF R$="Y" THEN 830
760  IF R$#"N" THEN 730
770  PRINT "ACCOUNT # ";
780  INPUT M[I1]
790  PRINT "AMOUNT ";
800  INPUT B[I1]
810  PRINT "FOR YOUR VALIDATION - ";
820  GOTO 720
830  RETURN 
840  IF I=T1/2 AND P<7 THEN 860
850  NEXT I
860  FOR I=1 TO T1
870  A[I]=B[I]
880  N[I]=M[I]
890  NEXT I
900  P8=1
910  IF P9>6 THEN 930
920  CHAIN "ATGM"
930  CHAIN "ATGM1"
940  PRINT '10"HOW MANY EMPLOYEES DO YOU HAVE ";
950  INPUT N1
960  T1=T2=T3=T4=T5=T6=T7=0
970  FOR I=1 TO N1
980  PRINT '10"EMPLOYEE # ";
990  INPUT N[I]
1000  PRINT "# EXEMPTIONS ";
1010  INPUT E[I]
1020  PRINT "# HOURS ";
1030  INPUT H[I]
1040  PRINT "RATE ";
1050  INPUT R[I]
1060  PRINT "INSURANCE ";
1070  INPUT S[I]
1080  PRINT "# BONDS ";
1090  INPUT B[I]
1100  IF H[I]>40 THEN 1130
1110  G[I]=R[I]*H[I]
1120  GOTO 1150
1130  G[I]=R[I]*(40+1.5*(H[I]-40))
1140  G[I]=FNR(G[I])
1150  X=G[I]-14.4*E[I]
1160  X=FNR(X)
1170  U[I]=X*.14
1180  U[I]=FNR(U[I])
1190  F[I]=G[I]*.058
1200  F[I]=FNR(F[I])
1210  B[I]=B[I]*3.75
1220  B[I]=FNR(B[I])
1230  T[I]=U[I]+F[I]+S[I]+B[I]
1240  M[I]=G[I]-T[I]
1250  T1=T1+G[I]
1260  T2=T2+U[I]
1270  T3=T3+F[I]
1280  T4=T4+S[I]
1290  T5=T5+B[I]
1300  T6=T6+T[I]
1310  T7=T7+M[I]
1320  NEXT I
1330  PRINT '10'10"STUDENT NAME - ";S$
1340  PRINT "EXERCISE - ";E$
1350  PRINT "DATE - ";D$
1360  PRINT '10TAB(21);C$
1370  PRINT TAB(24)"PAYROLL REGISTER"
1380  PRINT TAB(17)"FOR WEEK ENDING ";A$;'10'10
1390  PRINT "EMP."TAB(6)"NO. OF"TAB(15)"NO. OF"TAB(24)"PAY"TAB(37)"TOTAL"TAB(49)"TOTAL"TAB(62)"NET"
1400  PRINT "NO."TAB(6)"EXEM."TAB(15)"HOURS"TAB(24)"RATE"TAB(35)"EARNINGS"TAB(50)"DED."TAB(62)"PAY"'10
1410  FOR I=1 TO N1
1420  PRINT N[I];TAB(7);E[I];TAB(15);H[I];TAB(23);R[I];TAB(35);G[I];TAB(47);T[I];TAB(59);M[I]
1430  NEXT I
1440  T1=FNR(T1)
1450  T6=FNR(T6)
1460  T7=FNR(T7)
1470  PRINT TAB(34)"---------"TAB(46)"---------"TAB(58)"---------"
1480  PRINT TAB(5)"TOTALS"TAB(35);T1;TAB(47);T6;TAB(59);T7
1490  IF P>2 THEN 1530
1500  IF P=1 AND T1=904.8 AND T6=192.74 AND T7=712.06 THEN 1530
1510  IF P=2 AND T1=817.5 AND T6=170.85 AND T7=646.65 THEN 1530
1520  GOTO 1720
1530  PRINT '10"TYPE GO FOR DEDUCTION REGISTER ";
1540  INPUT R$
1550  IF R$#"GO" THEN 1530
1560  PRINT TAB(30)'10'10"DEDUCTIONS"
1570  PRINT TAB(7)"------------------------------------------------------"
1580  PRINT "EMP."TAB(7)"INCOME"TAB(20)"FICA"TAB(31)"INSUR."TAB(44)"BONDS"TAB(57)"TOTAL"
1590  PRINT "NO."TAB(8)"TAX"TAB(20)"TAX"'10
1600  FOR I=1 TO N1
1610  PRINT N[I];TAB(7);U[I];TAB(19);F[I];TAB(31);S[I];TAB(43);B[I];TAB(55);T[I]
1620  NEXT I
1630  T2=FNR(T2)
1640  T4=FNR(T4)
1650  T3=FNR(T3)
1660  T5=FNR(T5)
1670  PRINT TAB(6)"---------"TAB(18)"---------"TAB(30)"---------"TAB(42)"---------"TAB(54)"---------"
1680  PRINT "TOTALS"TAB(7);T2;TAB(19);T3;TAB(31);T4;TAB(43);T5;TAB(55);T6
1690  IF P>2 THEN 1790
1700  IF P=1 AND T2=106.51 AND T3=52.48 AND T4=7.5 AND T5=26.25 THEN 1790
1710  IF P=2 AND T2=86.23 AND T3=47.42 AND T4=7.2 AND T5=30 THEN 1790
1720  PRINT '10"YOUR TOTALS ARE NOT CORRECT.  DO YOU WISH TO"
1730  PRINT "1 - CORRECT YOUR DATA"
1740  PRINT "2 - STOP NOW"
1750  INPUT R
1760  IF R=1 THEN 940
1770  IF R#2 THEN 1720
1780  STOP 
1790  PRINT '10'7"*"'7"*"'7"*"'7"*"'7"*"'7" VERY GOOD - YOUR TOTALS MATCH MINE "'7"*"'7"*"'7"*"'7"*"'7"*"
1800  PRINT '10"DO YOU WISH TO"
1810  PRINT "1 - DO ANOTHER PROBLEM FROM THIS CHAPTER"
1820  PRINT "2 - DO A PROBLEM FROM ANOTHER CHAPTER"
1830  PRINT "3 - STOP NOW"
1840  INPUT R
1850  IF R#1 THEN 1950
1860  PRINT '10"EXERXISE X-X PLEASE ";
1870  INPUT E$
1880  PRINT "COMPANY NAME ";
1890  INPUT C$
1900  PRINT "DATE OF ACCOUNTING PERIOD ";
1910  INPUT A$
1920  PRINT "WHICH PROBLEM IS THIS ";
1930  INPUT P
1940  GOTO 940
1950  IF R#2 THEN 1970
1960  CHAIN "ATG"
1970  IF R#3 THEN 1800
1980  END 
