Listing of file='FINANC.BAS;01' on disk='vmedia/chip_75-sector.ccvf'
10 REM E.S.DONN 3/6/79 20 PLOT 12,3,23,1 30 DIM P(20),V(20),C(50) 100 PRINT "$$$ FINANCE $$$" 110 PRINT :PRINT " THIS PROGRAM IS IN THREE PARTS:" 120 PRINT :PRINT TAB( 8)"PRICE/VOLUME ANALYZES PRICING." 130 PRINT TAB( 8)"CASH FLOW ANALYZES INVESTMENT AND SALES." 140 PRINT TAB( 8)"RETURN ON INVESTMENT ANALYZES CASH FLOW." 145 GOSUB 1700 150 PRINT :PRINT TAB( 8)"TYPE P FOR PRICE/VOLUME" 160 PRINT TAB( 8)" C CASH FLOW" 170 PRINT TAB( 8)" R RETURN ON INVESTMENT" 175 PRINT TAB( 8)" I INSTRUCTIONS" 180 PRINT :INPUT XX$ 182 IF XX$= "P"THEN 200 184 IF XX$= "C"THEN 600 186 IF XX$= "R"THEN 1000 187 IF XX$= "I"THEN 2000 190 GOTO 180 200 CLEAR :PLOT 12,3,25,2 210 PRINT "PRICE/VOLUME":PRINT :PRINT :PRINT 250 INPUT "ENTER MANUFACTURING COST, OVERHEAD: ";M,OH 255 IF OH< 1THEN 265 260 PRINT "0 < OVERHEAD < 1":GOTO 250 265 N= 0 267 GOSUB 1700 270 PRINT :PRINT "ENTER PRICE, VOLUME:":PRINT 275 DEF FN P(I)= INT (100* V(I)* (P(I)* (1- OH)- M)+ .5)/ 100 277 MP= 0:MV= 0:MF= 0:LP= 1E9 280 FOR I= 0TO 20 290 INPUT P$,V$ 300 IF P$= "*"THEN 340 310 P(I)= VAL (P$):V(I)= VAL (V$) 315 IF P(I)> MPTHEN MP= P(I) 317 IF P(I)< LPTHEN LP= P(I) 320 IF V(I)> MVTHEN MV= V(I) 325 IF FN P(I)> MFTHEN MF= FN P(I) 330 NEXT I 340 N= I- 1 345 PLOT 12,3,0,4 350 PRINT "PRICE";TAB( 6)"VOLUME";TAB( 15);"PROFIT" 360 FOR I= 0TO N 370 PRINT P(I);TAB( 5)"";V(I);TAB( 14)"";FN P(I);"" 380 NEXT I 390 PLOT 29,18,2,120,15,242,50,15,50,115,255 395 PLOT 29,22,2,50,115,242 400 FOR I= 0TO N 405 X= 50- 70/ (MP- LP)* LP+ 70/ (MP- LP)* P(I) 410 Y= 15+ 100/ MV* V(I) 415 PLOT X,Y,X,Y+ 2,X,Y- 2,X,Y:NEXT :PLOT 255 420 PLOT 29,19,2,50,15+ 100/ MF* FN P(0),242 425 FOR I= 0TO N 430 X= 50- 70/ (MP- LP)* LP+ 70/ (MP- LP)* P(I) 435 Y= 15+ 100/ MF* FN P(I) 440 PLOT X,Y,X,Y+ 2,X,Y- 2,X,Y 445 NEXT :PLOT 255 450 PLOT 3,0,31:INPUT Z 455 PRINT "TYPE 1 FOR PRICE/VOLUME" 456 PRINT " 2 CASH FLOW" 457 PRINT " 3 ROI" 460 PRINT :INPUT Z 465 ON ZGOTO 200,600,1000 600 CLEAR :PLOT 12,3,26,0 605 PRINT "CASH FLOW" 610 N= 0:F2= 1 615 PRINT :PRINT "ENTER SELL PRICE, MANUFACTURING COST, OVERHEAD: " 620 INPUT " ?";P,M,OH 625 GOSUB 1700:PRINT 630 PRINT TAB( 10)"YEAR";TAB( 18);"INVEST";TAB( 28)"SALES"; 635 PRINT TAB( 40);"CASH FLOW":PRINT 640 FOR B= 0TO 20 650 PRINT TAB( 10)B+ 1;TAB( 19); 660 IF F= 1THEN PRINT TAB( 29);:GOTO 720 670 INPUT "";I1$:PRINT "";TAB( 29);:PLOT 28 680 IF I1$< > "*"THEN 690 685 F= 1:GOTO 720 690 C(B)= - VAL (I1$) 720 INPUT "";V$:PRINT "";TAB( 41);:PLOT 28 723 IF V$= "*"THEN 800 725 V= VAL (V$) 727 N= N+ 1 730 C(B)= C(B)+ V* (P* (1- OH)- M) 740 IF C(B)> 0THEN 770 750 T0= T0- C(B) 760 GOTO 780 770 T1= T1+ C(B) 780 PRINT "";INT (100* C(B))/ 100;"" 790 NEXT B 800 N= N- 1 810 PRINT :GOSUB 1400 820 CLEAR :GOTO 450 1000 REM ROI 1010 CLEAR :PLOT 12,3,21,0 1020 PRINT "RETURN ON INVESTMENT" 1022 PRINT :PRINT " THIS PROGRAM CALCULATES RETURN ON INVESTMENT" 1024 PRINT "FROM CASH FLOW." 1026 PRINT :PRINT " ENTER AN INVESTMENT AS NEGATIVE AND A " 1028 PRINT "RETURN AS POSTIVE." 1030 PRINT :PRINT " FOR EXAMPLE: -10,2,5,5,5,2,*" 1032 GOSUB 1700 1040 PRINT :PRINT :GOTO 1195 1192 PLOT 12,3,0,3 1195 PRINT "ENTER CASH FLOW":PRINT 1200 FOR A= 0TO 50 1210 INPUT C$ 1220 IF C$= "*"THEN 1280 1230 C(A)= VAL (C$) 1240 IF C(A)> 0THEN 1260 1250 T0= T0- C(A):GOTO 1270 1260 T1= T1+ C(A) 1265 IF T0< > 0THEN 1270 1266 PRINT "INVESTMENT MUST BE NEGATIVE" 1267 T1= T1- C(A):GOTO 1210 1270 NEXT A 1280 N= A- 1 1300 GOSUB 1400 1310 PLOT 3,0,31 1320 INPUT "TYPE 1 TO CONTINUE ";Z 1330 IF Z= 1THEN 1192 1340 CLEAR :GOTO 450 1399 REM ROI ALGORITHM 1400 X0= T1- T0 1410 R0= 0:X1= 0 1420 R1= (T1/ T0- 1)/ N 1430 FOR J= 1TO 100 1440 FOR I= 0TO N 1450 X1= X1+ C(I)* (1+ R1)^ - I 1460 NEXT I 1465 IF X0= X1THEN X0= X0+ 1E- 3 1470 R2= R1- X1* (R0- R1)/ (X0- X1) 1473 IF X1/ T1< 1E- 5THEN 1600 1475 IF R2< 0THEN R2= .5* R1 1477 IF R2> T1/ T0THEN R2= 2* R1 1480 X0= X1:R0= R1:R1= R2:X1= 0 1530 NEXT J 1600 GOTO 1900 1700 PRINT :PRINT " TYPE * TO TERMINATE LISTS." 1710 RETURN 1900 PRINT :PRINT "ROI";TAB( 20); 1902 PRINT "";INT (1E4* R2+ .5)/ 100;" %" 1905 PRINT "PAYBACK";TAB( 20); 1907 PRINT "";INT (100* T0/ T1* N+ .5)/ 100;" YEARS" 1909 IF F2= 0THEN 1925 1910 PRINT "BREAKEVEN";TAB( 20); 1912 PRINT "";INT (T0/ (P* (1- OH)- M)+ .5);" UNITS" 1915 PRINT "PROFIT MARGIN";TAB( 20); 1917 PRINT "";INT (1E4* ((P* (1- OH)- M)/ P)+ .5)/ 100;" %" 1920 PRINT "MANUFACTURING COST";TAB( 20); 1922 PRINT ""INT (1E4* M/ P+ .5)/ 100;" %" 1925 PRINT "INVESTMENT";TAB( 20); 1927 PRINT " $";INT (T0+ .5);"" 1930 PRINT "RETURN";TAB( 20); 1932 PRINT " $";INT (T1+ .5);"" 1950 RETURN :REM END ROI ALGORITHM 2000 PLOT 12,3,25,0 2002 PRINT "INSTRUCTIONS" 2004 PRINT :PRINT " PRICE/VOLUME SHOWS THE AFFECT OF PRICE ON VOLUME." 2006 PRINT "THE VOLUME IS RELATIVE. USE SOMETHING CONVENIENT," 2010 PRINT "LIKE 100, FOR THE LOWEST PRICE. THEN RAISE THE" 2020 PRINT "PRICE AND ESTIMATE THE RESULTING VOLUME. THE " 2030 PRINT "PROGRAM WILL CALCULATE AND PLOT PROFIT." 2040 PRINT " CASH FLOW IS USED AFTER CHOOSING A PRICE. ENTER" 2050 PRINT "THE INVESTMENT AND SANES FOR EACH YEAR. TERMINATE" 2060 PRINT "THE INVESTMENT COLUMN ONCE IT IS ZERO WITH *." 2070 PRINT "AT THE END OF THE SALES PROFILE THE PROGRAM WILL" 2080 PRINT "CALCULATE CASH FLOW, RETURN ON INVESTMENT, ETC." 2090 PRINT " RETURN ON INVESTMENT IS USED IF CASH FLOW IS ALREADY KNOWN." 3000 GOTO 450