10 ! ORIGINAL SOURCE: ACCOUNTING WITH THE COMPUTER BY: J.W. WILKINSON COPYRIGHT: 1972 RICHARD D. IRWIN 20 ! THIS VERSION BY DARRYL JOHNSON BENTLEY COLLEGE SPRING 1972 30 ! LAST REVISED BY JERRY SIMMONS BENTLEY COLLEGE SPRINT 1973 ! 40 DIM Z(10,3),C(80,4),A$(72),B$(10),A(30) 50 OPEN "$CASE1.DAT" AS FILE 1% 60 DIM #1%,A1(30),N(30),B(32),I$(28)=64 70 MAT A=A1:PRINT:PRINT 80 INPUT"TYPE IN YOUR NAME, CLASS, AND SECTION NUMBER"A$ 90 PRINT:PRINT 100 INPUT"DO YOU WANT INSTRUCTIONS";B$ 110 PRINT:PRINT 120 IF LEFT(B$,1%)="Y" THEN 130 ELSE IF LEFT(B$,1%)="N" THEN 140 ELSE PRINT"PLEASE ANSWER 'YES' OR 'NO'" : GOTO 100 130 PRINT I$(X%) FOR X%=1% TO 28%:PRINT:PRINT 140 PRINT "PLEASE TYPE IN THE MONTH CODE AND THE ENDING" 150 INPUT"INVENTORY FIGURE SEPERATED BY COMMAS";M,P1 160 IF M=3 THEN 170 ELSE PRINT "THE MONTH CODE IS INCORRECT" : GOTO 140 170 A1,N3,N4,T,Z = 0 180 Z=1:PRINT:PRINT 190 PRINT "TRANS. ACC." 200 PRINT " NO. NO. DR. CR." 210 PRINT "--------------------" 220 INPUT N,N1,D,C 230 IF N3<>0 THEN 260 240 N3=N 250 N4=N 260 IF N=9999 THEN 320 270 FOR X=1 TO 30 280 IF N(X)=N1 THEN 320 290 NEXT X 300 PRINT N1 "IS AN INVALID ACCOUNT NO. RE-ENTER THE ENTIRE LINE" 310 GOTO 220 320 IF N=N4 THEN 500 ELSE IF A1<=.01 AND A1>=-.01 THEN 430 330 PRINT:PRINT 340 PRINT"IN TRANSACTION NO."N4"THE DEBITS AND CREDITS ARE NOT EQUAL" 350 PRINT"TO CHANGE NO."N4"TYPE CHANGE. TO CONTINUE WITH NO."N"TYPE" 360 PRINT"CONTINUE [CAUTION: NO."N4"WILL BE BOOKED OUT OF BALANCE]," 370 PRINT"OR TYPE IN STOP TO STOP THE PROGRAM." 380 INPUT "CHANGE CONTINUE OR STOP";B$ 390 IF LEFT(B$,3)="CON" THEN 420 ELSE IF LEFT(B$,3)="CHA" THEN 400 ELSE IF LEFT(B$,3)="STO" THEN STOP ELSE PRINT "PLEASE TYPE 'CHANGE', 'CONTINUE', OR 'STOP'" : GOTO 380 400 MAT Z=ZER 410 PRINT"COMPLETELY RE-ENTER NO."N4"AND THEN START NO."N"ALL OVER" : T,A1=0 : GOTO 220 420 PRINT "CONTINUE WITH TRANSACTION NO."N 430 FOR X1=1 TO T : N8=Z(X1,1) : A(N8)=A(N8)+Z(X1,2)-Z(X1,3) : NEXT X1 440 Z1=1 450 FOR X1=Z TO(Z+T-1) : N8=Z(Z1,1) : C(X1,1)=N4 460 C(X1,2)=N(N8) : C(X1,3)=Z(Z1,2) : C(X1,4)=Z(Z1,3) 470 Z1=Z1+1 : NEXT X1 480 Z=Z+T : N4=N : MAT Z=ZER : T,A1=0 490 IF N=9999 THEN 520 500 T=T+1 : Z(T,1)=X : Z(T,2)=Z(T,2)+D : Z(T,3)=Z(T,3)+C : A1=A1+D-C 510 A1=INT(A1*100)/100 : GOTO 220 520 PRINT FOR X=1 TO 4 : PRINT TAB(22)"ACCOUNTING WITH THE COMPUTER" : PRINT TAB((72-(15+LEN(A$)))/2)"PROCESSING FOR "A$ : PRINT 530 A(19)=A(3) : A(22)=P1 : A(3)=P1 540 PRINT"THE FOLLOWING ACCOUNTS HAVE INCORRECT BALANCES:" 550 PRINT 560 FOR X=1 TO 30 : IF X= 16 THEN 590 ELSE B(X)=ABS(B(X)) 570 A(X)=ABS(A(X)) : E=ABS(B(X)-A(X)) : IF E<.51 THEN 590 ELSE PRINT N(X); 580 C=1 590 NEXT X 600 IF C=0 THEN PRINT "NONE" 610 A1$="":A1$=A1$+CVTF$(A(X)) FOR X=1 TO 30 620 V$=SYS(CHR$(8%)+A1$) 630 PRINT FOR X=1 TO 5 : PRINT"IF YOU WANT A LISTING OF YOUR ENTRIES": INPUT"TYPE 'YES'; IF NOT TYPE 'NO'"B$ 640 IF LEFT(B$,1)="Y" THEN 650 ELSE 680 650 PRINT"TRANS. ACCOUNT DEBIT CREDIT" : PRINT" NO. NO." : PRINT"------------------------" : PRINT C(1,1);:FOR X1=1 TO Z : PRINT TAB(10);C(X1,2);TAB(20);C(X1,3);TAB(30);C(X1,4) 660 IF C(X1,1)=C(X1+1,1) THEN 670 ELSE IF C(X1+1,1)=0 THEN 680 ELSE PRINT : PRINT C(X1+1,1); 670 NEXT X1 680 CHAIN "$CASE2.BAC" 20 690 END