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  P8=0
40  DEF FNR()=(INT(*100+.5))/100
50  PRINT "ATG ? SELECTION PROGRAM"
60  PRINT "PLEASE TELL ME WHICH PROGRAM NUMBER (3-13) YOU WISH TO USE ";
70  INPUT P9
80  IF P9<3 OR P9>13 THEN 60
90  IF P9#10 THEN 120
100  PRINT "THANKYOU, YOU WILL BE USING PROGRAM BAN10"
110  GOTO 360
120  IF P9#11 THEN 150
130  PRINT "THANKYOU, YOU WILL BE USING PROGRAM PAY11"
140  GOTO 360
150  IF P9#12 THEN 180
160  PRINT "THANKYOU, YOU WILL BE USING PROGRAM DEP12"
170  GOTO 360
180  PRINT "THANKYOU, YOU WILL BE USING PROGRAM ATG";P9
190  PRINT '10"IS THIS A SECOND RUN FOR YOUR TRANSACTION DATA (Y/N) ";
200  INPUT R$
210  IF R$="N" THEN 360
220  IF R$#"Y" THEN 190
230  FOR I=1 TO T1
240  A[I]=B[I]
250  N[I]=M[I]
260  NEXT I
270  PRINT "WHICH PROBLEM IS THIS ";
280  INPUT P
290  P8=1
300  GOTO P9 OF 60,60,360,310,310,310,320,320,320,330,330,330,320
310  CHAIN "ATGM"
320  CHAIN "ATGM1"
330  PRINT '10"ERROR - YOU SHOULD NEVER GET HERE"
340  STOP 
350  DIM R$[5]
360  PRINT '10'10"COMPUTER ORIENTED ACCOUNTING"
370  PRINT '10"STUDENT NAME PLEASE ";
380  INPUT S$
390  PRINT "DATE PLEASE ";
400  INPUT D$
410  PRINT "EXERCISE X-X PLEASE ";
420  INPUT E$
430  PRINT '10"TRANSACTION DATA"'10
440  PRINT "COMPANY NAME ";
450  INPUT C$
460  PRINT "DATE OF ACCOUNTING PERIOD ";
470  INPUT A$
480  IF P9=3 THEN 590
490  PRINT "WHICH PROBLEM IS THIS ";
500  INPUT P
510  IF P9=10 THEN 1020
520  IF P9=11 THEN 2350
530  IF P9=12 THEN 1650
540  PRINT "HOW MANY TRANSACTION ENTRIES DO YOU HAVE ";
550  INPUT T1
560  T7=T1
570  T8=T9=0
580  GOTO 300
590  PRINT 
600  PRINT "CASH ";
610  INPUT C
620  PRINT "SUPPLIES ";
630  INPUT S
640  PRINT "TELEVISIONS ";
650  INPUT T
660  PRINT "RADIOS ";
670  INPUT R
680  PRINT "BOWMAN RADIO CO. ";
690  INPUT B
700  PRINT "CAPITAL ";
710  INPUT C1
720  A=C+S+T+R
730  T1=B+C1
740  IF A=C1+B THEN 800
750  IF A<C1+B THEN 780
760  PRINT "***** TOTALS DO NOT MATCH - ASSETS > LIABILITIES + CAPITAL *****"
770  GOTO 590
780  PRINT "***** TOTALS DO NOT MATCH - ASSETS < LIABILITIES + CAPITAL *****"
790  GOTO 590
800  GOSUB 820
810  GOTO 860
820  PRINT '10'10"STUDENT NAME - ";S$
830  PRINT "EXERCISE - ";E$
840  PRINT "DATE - ";D$
850  RETURN 
860  PRINT TAB(26)'10'10C$
870  PRINT TAB(30);'10"BALANCE SHEET"
880  PRINT TAB(28)'10A$
890  PRINT '10'10TAB(10);"ASSETS";TAB(52);"LIABILITIES"
900  PRINT '10"CASH"TAB(20);C;TAB(45);"BOWMAN RADIO CO.";TAB(65);B
910  PRINT 
920  PRINT "SUPPLIES";TAB(20);S
930  PRINT 
940  PRINT "TELEVISION"TAB(20);T;TAB(54);"CAPITAL"
950  PRINT '10"RADIOS";TAB(20);R;TAB(45);"CAPITAL";TAB(65);C1
960  PRINT TAB(20)"-------"TAB(65)"-------"
970  PRINT "TOTAL ASSETS"TAB(20);A;TAB(45)"TOTAL LIAB. & CAP.";TAB(65);T1
980  PRINT TAB(20)"-------"TAB(65)"-------"
990  PRINT TAB(20)"-------"TAB(65)"-------"
1000  GOTO 50
1010  END 
1020  PRINT '10"ENDING CHECKBOOK BALANCE ";
1030  INPUT B1
1040  PRINT "OUTSTANDING DEPOSITS (TOTAL) ";
1050  INPUT D1
1060  PRINT "ENDING BANK STATEMENT BALANCE ";
1070  INPUT B2
1080  S2=FNR(D1+B2)
1090  PRINT "SERVICE CHARGE ";
1100  INPUT S1
1110  S3=FNR(B1-S1)
1120  PRINT '10"HOW MANY OUTSTANDING CHECKS DO YOU HAVE ";
1130  INPUT N1
1140  S=0
1150  FOR I=1 TO N1
1160  PRINT '10"CHECK # ";
1170  INPUT N[I]
1180  PRINT "AMOUNT ";
1190  INPUT A[I]
1200  S=S+A[I]
1210  NEXT I
1215  S=FNR(S)
1220  GOSUB 820
1230  PRINT '10TAB(23);C$
1240  PRINT TAB(18)"RECONCILIATION OF BANK STATEMENT"
1250  PRINT TAB(24);A$
1260  PRINT '10'10"BALANCE OF CHECKBOOK"TAB(26);FNR(B1);TAB(36)"BANK STATEMENT BALANCE"TAB(62);B2
1270  PRINT "DEDUCT"TAB(38)"ADD OUTSTANDING DEPOSITS"TAB(62);D1
1280  PRINT TAB(5)"SERVICE CHARGE"TAB(26);S1;TAB(60)"------------"
1290  PRINT TAB(41)"TOTAL"TAB(62);S2
1300  PRINT TAB(38)'10"DEDUCT OUTSTANDING CHECKS"'10
1310  FOR I=1 TO N1
1320  PRINT TAB(38)"NO."N[I]"  "A[I]
1330  NEXT I
1340  PRINT TAB(47)"------------"
1350  S4=FNR(S2-S)
1360  PRINT TAB(41)"TOTAL"TAB(62);S
1370  GOSUB 1630
1380  PRINT "ADJUSTED CHECKBOOK BALANCE"TAB(26);S3;TAB(62);S4
1390  GOSUB 1630
1400  GOSUB 1630
1410  IF S3=S4 THEN 1500
1420  PRINT '10"ERROR - YOU DO NOT BALANCE"
1430  PRINT '10"WOULD YOU LIKE TO"
1440  PRINT "1 - CORRECT YOUR DATA"
1450  PRINT "2 - STOP NOW"
1460  INPUT R
1470  IF R=1 THEN 1020
1480  IF R#2 THEN 1430
1490  STOP 
1500  IF (P=1 AND S3=45.1) OR (P=2 AND S3=5380.22) OR P>2 THEN 1530
1510  PRINT '10"YOU BALANCE BUT YOUR DATA IS BAD"
1520  GOTO 1430
1530  PRINT '10'7"*"'7"*"'7"*"'7"*"'7"* SUPERGREAT - YOU BALANCE "'7"*"'7"*"'7"*"'7"*"'7"*"'10
1540  PRINT "WOULD YOU LIKE TO"
1550  PRINT "1 - TRY ANOTHER SET OF DATA FOR THIS CHAPTER"
1560  PRINT "2 - TRY ANOTHER PROBLEM IN ANOTHER CHAPTER"
1570  PRINT "3 - STOP NOW"
1580  INPUT R
1590  IF R=1 THEN 410
1600  IF R=2 THEN 50
1610  IF R#3 THEN 1540
1620  STOP 
1630  PRINT TAB(24)"------------"TAB(60)"------------"
1640  RETURN 
1650  PRINT '10"USEFUL LIFE ";
1660  INPUT L
1670  PRINT "ORIGINAL COST ";
1680  INPUT C
1690  PRINT "SCRAP VALUE ";
1700  INPUT S
1710  IF P>2 THEN 1780
1720  IF P=1 AND L=20 AND C=80000. AND S=10000 THEN 1780
1730  IF P=1 AND L=8 AND C=40000. AND S=5000 THEN 1780
1740  IF P=2 AND L=10 AND C=95000. AND S=20000 THEN 1780
1750  IF P=2 AND L=6 AND C=35000. AND S=200 THEN 1780
1760  PRINT '10"ERROR - THINK AGAIN, YOUR DATA IS INCORRECT"
1770  GOTO 1650
1780  X=FNR((C-S)/L)
1790  GOSUB 820
1800  PRINT '10TAB(25);C$
1810  PRINT TAB(27);A$
1820  PRINT TAB(25)'10'10"TABLE OF DEPRECIATION"
1830  PRINT TAB(25)"STRAIGHT-LINE METHOD"
1840  GOSUB 1860
1850  GOTO 1950
1860  PRINT TAB(14)'10"DEBIT"TAB(28)"CREDIT"TAB(42)"TOTAL"
1870  PRINT TAB(10)"DEPRECIATION"TAB(25)"ACCUMULATED"TAB(39)"ACCUMULATED"TAB(56)"BOOK"
1880  PRINT "YEAR"TAB(13)"EXPENSE"TAB(24)"DEPRECIATION"TAB(38)"DEPRECIATION"TAB(56)"VALUE"
1890  PRINT "----"TAB(10)"------------"TAB(24)"------------"TAB(38)"------------"TAB(54)"---------"
1900  PRINT TAB(55);C
1910  X1=0
1920  C1=C
1930  S1=0
1940  RETURN 
1950  FOR I=1 TO L
1960  X1=X1+X
1970  C1=C1-X
1980  GOSUB 2330
1990  S1=X+S1
2000  NEXT I
2010  GOSUB 2030
2020  GOTO 2080
2030  GOSUB 2310
2040  PRINT TAB(3)"TOTAL"TAB(13);S1;TAB(27);S1
2050  GOSUB 2310
2060  GOSUB 2310
2070  RETURN 
2080  PRINT '10"TYPE GO FOR THE NEXT TABLE WHEN YOU ARE READY ";
2090  INPUT R$
2100  IF R$#"GO" THEN 2080
2110  PRINT TAB(25)'10'10"TABLE OF DEPRECIATION"
2120  PRINT TAB(23)"DECLINING-BALANCE METHOD"
2130  GOSUB 1860
2140  X=C
2150  I=0
2160  I=I+1
2170  X=FNR(2*C1/L)
2180  C1=C1-X
2190  IF C1 >= S THEN 2240
2200  C1=S
2210  X=FNR(C-S-X1)
2220  X1=C-S
2230  GOTO 2250
2240  X1=X1+X
2250  GOSUB 2330
2260  S1=X+S1
2270  IF C1>S AND I#L THEN 2160
2280  GOSUB 2030
2290  PRINT 
2300  GOTO 1540
2310  PRINT TAB(10)"------------"TAB(24)"------------"
2320  RETURN 
2330  PRINT I;TAB(13);X;TAB(27);X;TAB(41);X1;TAB(55);C1
2340  RETURN 
2350  CHAIN "ATGE"
2360  END 
