9000 REM ***** STKVAL ***** BUSINESS PROGRAM 9002 REM STKVAL************ VERSION #1 (7/31/69)*****STOCK VALUE***** 9003 REM 9006 PRINT "* STOCK VALUE & EVALUATION *" 9007 PRINT 9008 PRINT "THIS PROGRAM DETERMINES WHETHER A CERTAIN STOCK OUGHT TO BE INVESTED" 9009 PRINT "IN, DEPENDING ON CERTAIN INPUT CONDITIONS. IT ALSO PROVIDES A LIST" 9010 PRINT "OF THE STOCK'S VALUE AND PRICE FOR EACH PERIOD." 9015 READ F 9020 DIM A$(6),B$(16),C$(11),N$(3) 9025 DIM X(50),G(50),C(50),V(50),Y(50) 9030 Y9=50 9035 REM THIS PROGRAM CALCULATES A STOCK'S VALUE AS DETERMINED BY ITS 9040 REM GROWTH RATE OVER A PERIOD OF YEARS, AND DETERMINES WHETHER THE 9045 REM STOCK OUGHT TO BE PURCHASED OR NOT. 9050 REM 9055 REM IT IS ASSUMED THAT AT SOME POINT IN THE STOCK'S LIFE ITS 9060 REM EARNINGS GROWTH RATE WILL APPROACH 5 PERCENT, A CONSERVATIVE 9065 REM EXTIMATE OF THE CURRENTLY EXPECTED GROWTH RATE OF OUR 9070 REM ECONOMY. 9075 REM 9080 REM BEFORE THIS LONG-TERM GROWTH RATE IS REACHED, THERE WILL 9085 REM BE A PERIOD OF NON-NORMAL GROWTH. THIS NON-NORMAL GROWTH 9090 REM PERIOD MAY CONTAIN MANY SHORTER PERIODS OF DIFFERING GROWTH 9095 REM RATES. FOR EACH OF THESE SHORTER PERIODS, YOU WILL BE ASKED 9100 REM TO SUPPLY THE ENDING YEAR OF THE PERIOD, AND THE GROWTH 9105 REM REATE YOU EXPECT FOR THE STOCK DURING THIS PERIOD. 9110 REM 9115 REM IT IS IMPORTANT TO NOTE THAT WHEN YOU HAVE REACHED THE END OF 9120 REM WHAT YOU CONSIDER THE NON-NORMAL PERIOD, YOU MUST ENTER .05 9125 REM AS THE EXPECTED GROWTH RATE. ANY YEAR GREATER THAN THE BEGIN- 9130 REM NING YEAR WILL SUFFICE. 9135 REM 9140 REM FOR INITIALIZATION, NOTE REMARK AT LINE 9765 9145 REM 9155 PRINT 9160 PRINT "WHAT IS THE CURRENT MARKET VALUE OF THE STOCK UNDER CONSIDERATION"; 9165 INPUT P 9170 PRINT 9175 PRINT "WHAT IS THE STOCK'S CURRENT EARNINGS PER PERIOD"; 9180 INPUT Y(Y9) 9185 PRINT 9190 PRINT "WHAT DO YOU EXPECT THE NORMALIZED EARNINGS FOR THE NEXT PERIOD TO BE"; 9195 INPUT Y(1) 9200 PRINT 9205 PRINT "WHAT IS THE CURRENT MARRET CAPITALIZATION RATE"; 9210 INPUT R 9215 PRINT 9220 PRINT "AND WHAT IS THE PAYOUT RATIO"; 9225 INPUT D 9230 PRINT 9235 PRINT 9240 PRINT "NOW PLEASE ENTER THE ENDING YEAR AND THE GROWTH RATE YOU EXPECT" 9245 PRINT "FOR EACH OF THE NON-NORMAL GROWTH PERIODS BEFORE THE STOCK SETTLES" 9250 PRINT " TO A STEADY 5% RATE." 9255 PRINT 9260 PRINT "(REMEMBER THE LAST ENTRY MUST INDICATE THE ATTAINMENT OF THE 5% RATE)." 9265 PRINT 9270 T1=1 9275 T2=0 9280 X(1)=Y(1)*D 9285 PRINT 9290 PRINT "BEGINNING ENDING GROWTH" 9295 PRINT " YEAR YEAR RATE" 9300 PRINT "--------- ------ ------" 9305 D1=F+1 9310 Z1=F 9315 PRINT D1;TAB(11); 9320 INPUT Z,S 9325 IF S=.05 THEN 9365 9330 T2=(Z-Z1)+T2 9335 G=S 9340 GOSUB 9665 9345 T1=T2+1 9350 D1=Z+1 9355 Z1=Z 9360 GOTO 9315 9365 T2=T2+1 9366 G=S 9370 GOSUB 9665 9375 REM CALCULATIONS BEGIN HERE 9380 GOSUB 9695 9385 PRINT 9390 PRINT 9395 PRINT F;"VALUES FOLLOW:" 9400 PRINT 9405 PRINT " PRICE : $";P 9410 PRINT " EARNINGS : $";Y(Y9) 9415 PRINT " P/E RATIO : ";P/Y(Y9) 9420 PRINT "" 9425 PRINT "************************************************************************" 9430 PRINT 9435 PRINT TAB(10);"----------------------------------------------------" 9440 PRINT TAB(10);": INTRINSIC VALUE =";V(1);TAB(61);":" 9445 PRINT TAB(10);":";TAB(61);":" 9450 PRINT TAB(10);": FROM THE INFORMATION YOU HAVE SUPPLIED,";TAB(61);":" 9455 PRINT TAB(10);": AND SINCE THE INTRINSIC VALUE IS EXACTLY";TAB(61);":" 9460 A=(V(2)/P-1)*100 9465 IF A<-5 THEN 9520 9470 IF A>5 THEN 9545 9475 B$="IT IS UNCLEAR WHETHER" 9480 C$="SHOULD" 9485 A$=" BELOW" 9490 GOTO 9560 9495 A$=" OF" 9500 A=100 9505 GOTO 9560 9510 A$=" ABOVE" 9515 GOTO 9560 9520 B$=" I AM SURE THAT" 9525 A$=" BELOW" 9530 C$=" SHOULD NOT" 9535 A=ABS(A) 9540 GOTO 9560 9545 B$="I AM SURE THAT" 9550 A$=" ABOVE" 9555 C$=" SHOULD" 9560 PRINT TAB(10);": ";A" PERCENT";A$" THE PRESENT PRICE";TAB(61);":" 9565 PRINT TAB(10);": ";B$;" THIS STOCK";C$" BE";TAB(61);":" 9570 PRINT TAB(10);": PURCHASED AT THIS TIME.";TAB(61);":" 9575 PRINT TAB(10);":";TAB(61);":" 9580 PRINT TAB(10);"----------------------------------------------------" 9585 PRINT 9590 PRINT "DO YOU WANT A LIST OF VALUES IN FUTURE YEARS"; 9595 INPUT N$ 9600 IF N$="YES" THEN 9615 9605 PRINT "*********************************************************************" 9610 GO TO 9999 9615 PRINT " YEAR","EARNINGS","GROWTH","CAPITALIZER","VALUE" 9620 PRINT " "," ","RATE"," ","(BEGINNING" 9625 PRINT " "," "," "," ","OF YEAR)" 9630 FOR I=1 TO T2 9635 PRINT I+F,Y(I),G(I),V(I)/Y(I),V(I) 9640 NEXT I 9645 PRINT 9650 PRINT " ","V/E RATIO =";V(1)/Y(Y9) 9655 PRINT 9660 GOTO 9605 9665 FOR I=T1 TO T2 9670 Y(I+1)=Y(I)*(1+G) 9675 G(I)=G 9680 X(I)=Y(I)*D 9685 NEXT I 9690 RETURN 9695 IF S >= R THEN 9745 9700 X(T2)=X(T2)+(X(T2)*(1+G)/(R-G)) 9705 FOR J=1 TO T2 9710 V(J)=0 9715 FOR I=J TO T2 9720 V(J)=V(J)+X(I)/(1+R)^(I-J+1) 9725 NEXT I 9730 C(J)=V(J)/X(J) 9735 NEXT J 9740 RETURN 9745 PRINT "CAPITALIZER MUST BE GREATER THAN LAST GROWTH RATE" 9750 PRINT "ENTER LARGER CAPITALIZER"; 9755 INPUT R 9760 GOTO 9695 9765 REM THE FOLLOWING DATA ITEM IS THE VALUE OF THE FIRST PERIOD 9770 REM UNER CONSIDERATION. IT IS HERE INITIALIZED TO THE YEAR 9775 REM 1969. BY CHANGING THIS VALUE ONE CAN INITIALIZE THE PROGRAM 9785 REM CONSIDERED, TO ANY PERIOD ID NUMBER. 9790 DATA 1969 9999 END