1  REM ****  HP BASIC PROGRAM LIBRARY  ******************************
2  REM
3  REM       MRKSIM: MARKETING SIMULATION
4  REM       BARKPI, PART 3 OF 5 (PRINTS OUT RESULTS)
5  REM       36199 REV A
6  REM
7  REM ****  CONTRIBUTED PROGRAM  ***********************************
5000  REM THIS IS THE PRINT PROGRAM FOR THE MARKETING SIMULATION
5010  REM SEE ARMKSIM BY GREENLAW AND KNIFFEN
5020  FILES MPRINT,INDY#1,INDY#2,INDY#3,DECIS,USER
5025  READ #6;N
5040  DIM B[3,8],C[3,18],E[3,9],H[3,4],N[7,3],O[3,5],P[4,3],Q[6,3],S[3,5]
5050  DIM W[3]
5052  DIM A$[72]
5060  REM INSERT THE NAMES OF THE FIRMS SELECTED BY THE CLASS
5170  READ #1;M2,M3
5180  FOR K=1 TO 3
5190  FOR I=1 TO 17
5200  READ #1;C[K,I]
5210  NEXT I
5220  FOR I=1 TO 5
5230  READ #1;O[K,I],S[K,I],R[K,I]
5240  LET O[K,I]=INT(O[K,I]+.5)
5270  NEXT I
5280  FOR I=1 TO 4
5290  READ #1;B[K,I],B[K,I+4],H[K,I],E[K,I],E[K,I+4],P[I,K],N[I,K],L[K,I]
5300  LET B[K,I]=INT(B[K,I]+.5)
5310  LET B[K,I+4]=INT(B[K,I+4]+.5)
5330  LET H[K,I]=INT(H[K,I]+.5)
5360  LET P[I,K]=INT(P[I,K]+.5)
5370  LET N[I,K]=INT(N[I,K]+.5)
5390  NEXT I
5400  READ #1;W[K]
5410  FOR M=1 TO 3
5420  READ #1;Q[K,M]
5430  NEXT M
5440  NEXT K
5450  READ #1;Q[5,1],Q[5,2]
5460  FOR I=1 TO 3
5470  READ #1;Q[4,I],Q[6,I]
5480  NEXT I
5485  LET V=0
5487  READ #5,M2+5*N-3
5490  FOR K=1 TO 3
5500  PRINT 
5504  READ #5;A$[V+1,V+24]
5510  PRINT 
5520  PRINT 
5530  PRINT 
5540  PRINT "***"
5550  PRINT "M A R K S I M"
5560  PRINT 
5570  PRINT A$[V+1,V+24]
5572  LET V=V+24
5580  PRINT 
5590  PRINT "INDUSTRY #";M2;"FIRM #";K;"PERIOD #";M3
5600  PRINT 
5610  PRINT "-------------------------------"
5630  PRINT TAB(7);"$";TAB(10);C[K,1]
5640  PRINT 
5650  LET Y=E[K,2]*E[K,6]+E[K,4]*E[K,8]
5660  PRINT C[K,2]
5670  IF C[K,3]<0 THEN 5700
5680  PRINT C[K,3]*(-1);TAB(18);"(SUBSTRAT INCREASE IN INV.)"
5690  GOTO 5710
5700  PRINT C[K,3]*(-1);TAB(18);"(ADD INCREASE IN INV.)"
5710  PRINT TAB(10);C[K,4]*(-1)
5720  PRINT TAB(10);"---------"
5740  PRINT ""
5750  PRINT 
5760  FOR I1=6 TO 15
5770  PRINT C[K,I1]
5780  NEXT I1
5870  PRINT TAB(10);C[K,16]*(-1)
5880  PRINT TAB(10),"---------"
5890  PRINT TAB(7);"$";TAB(10);C[K,17]
5920  PRINT "------------------------------"
5940  PRINT "$";TAB(3);H[K,1]
5950  PRINT TAB(3);INT(Y)
5960  PRINT TAB(3);"----------"
5970  PRINT "$";TAB(3);INT(H[K,1]+Y-H[K,2]+.5)
5980  PRINT TAB(3);INT(H[K,2]+.5)
5990  PRINT TAB(3);"---------"
6000  PRINT "$";TAB(3);INT(H[K,1]+Y-H[K,2]+.5)
6030  PRINT "-------------------------------"
6050  IF R[K,1]=1 THEN 6080
6060  PRINT "NOT PURCHASED"
6070  GOTO 6090
6080  PRINT Q[5,1]
6090  IF R[K,2]=1 THEN 6120
6100  PRINT "NOT PURCHASED"
6110  GOTO 6130
6120  PRINT Q[5,2]
6130  PRINT "MARKET 1*MARKET 2*MARKET 3"
6140  IF R[K,3]=1 THEN 6170
6150  PRINT "NOT PURCHASED"
6160  GOTO 6180
6170  PRINT INT(P[K,1]+.5);TAB(10);INT(P[K,2]+.5);TAB(20);INT(P[K,3]+.5)
6180  IF R[K,4]=1 THEN 6210
6190  PRINT "NOT PURCHASED"
6200  GOTO 6220
6210  PRINT Q[4,1];TAB(10);Q[4,2];TAB(20);Q[4,3]
6220  IF R[K,5]=1 THEN 6250
6230  PRINT "NOT PURCHASED"
6240  GOTO 6270
6250  PRINT (INT(100*Q[K,1]+.5));TAB(10);INT(100*Q[K,2]+.5);
6260  PRINT TAB(20);INT(100*Q[K,3]+.5)
6270  PRINT 
6280  PRINT Q[6,1]
6290  PRINT Q[6,2]
6300  PRINT Q[6,3]
6330  PRINT "-------------------------------"
6350  PRINT 
6360  PRINT N[K,1];TAB(10);N[K,2];TAB(20);N[K,3]
6370  PRINT INT(S[K,1]+.5)
6380  PRINT B[K,1];TAB(10);"AT $";INT(100*B[K,5]+.5)/100
6390  PRINT E[K,1];TAB(10);"AT $";INT(100*E[K,5]+.5)/100
6400  PRINT 
6410  PRINT 
6420  PRINT O[K,3]
6430  PRINT INT(S[K,3]+.5)
6440  LET P1=.75*Q[6,K]
6450  LET P2=.65*Q[6,K]
6460  PRINT "$";INT(100*P1+.5)/100
6470  PRINT "$";INT(P1*S[K,3]+.5)
6480  PRINT B[K,3];TAB(10);"AT $";INT(B[K,7]+.5)
6490  PRINT E[K,3];TAB(10);"AT $";INT(E[K,7]+.5)
6500  PRINT ""
6510  PRINT 
6520  PRINT O[K,2]
6530  PRINT INT(S[K,2]+.5)
6540  PRINT "$";INT(100*P1+.5)/100
6550  PRINT "$";INT(P1*S[K,2]+.5)
6560  PRINT B[K,2];TAB(10);"AT $";INT(100*B[K,6]+.5)/100
6580  PRINT ""
6585  PRINT 
6600  PRINT O[K,5]
6610  PRINT INT(S[K,5]+.5)
6620  PRINT "$";INT(100*P2+.5)/100
6630  PRINT "$";INT(C[K,1]-P1*S[K,2]+.5)
6640  PRINT INT(S[K,4]+.5)
6650  PRINT H[K,4]
6660  PRINT B[K,4];TAB(10);"AT $";INT(100*B[K,8]+.5)/100
6670  PRINT E[K,4];TAB(10);"AT $";INT(100*E[K,8]+.5)/100
6700  PRINT 
6710  PRINT "----------------------------"
6720  PRINT 
6730  PRINT "*** TEAR HERE***"
6740  PRINT 
6750  NEXT K
6755  PRINT #M2+1,2*N-1
6770  FOR K=1 TO 3
6780  FOR I=1 TO 4
6790  PRINT #M2+1;E[K,I],E[K,I+4],H[K,I],L[K,I]
6800  NEXT I
6810  NEXT K
6820  END 
