Compucolor.org – Virtual Media

Listing of file='RETIRE.BAS;01' on disk='vmedia/chip_75-sector.ccvf'

100 REM  "RETIRE", A RETIREMENT-PLANNING PGM.  W. RUST, 12/1/79
102 REM  REF: IEEE SPECTRUM, SEPT 1979, PAGE 58, E.W.HEROLD
110 REM  --- INSTRUCTIONS
120 PLOT 15,6,6,12
130 PRINT TAB( 13);"RETIREMENT-PLANNING PROGRAM":PRINT
135 PLOT 6,3
140 PRINT "YOU WILL BE ASKED TO ENTER NINE DIFFERENT VALUES OF"
150 PRINT "AGES, LIVING EXPENSE, INCOMES, ETC.":PRINT
160 PRINT "YOU WILL THEN BE TOLD HOW MUCH CAPITAL YOU WILL NEED"
170 PRINT "WHEN YOU RETIRE SO THAT YOU CAN LIVE AT A SPECIFIED"
180 PRINT "ECONOMIC LEVEL UP TO AN AGE YOU SPECIFY.":PRINT
190 PRINT "AT THAT AGE, YOUR CAPITAL WILL BE GONE, BUT INCOME"
200 PRINT "FROM PENSIONS AND SOCIAL SECURITY WILL CONTINUE."
210 PRINT "YOU WILL THEN BEGIN LIVING AT A LOWER ANNUAL"
220 PRINT "EXPENSE LEVEL.":PRINT
230 PRINT "YOU CAN RUN THE PROGRAM MANY TIMES, CHANGING VALUES"
240 PRINT "TO STUDY THEIR EFFECT."
290 PRINT :PLOT 6,1
295 PRINT "TO CONTINUE, HIT 'RETURN' KEY.  ";:INPUT Q$
400 REM  --- CREATE FIXED DISPLAY
410 PLOT 15,6,6,12,27,24:REM  PAGE MODE
420 PRINT "VALUES TO BE ENTERED:":PRINT :PLOT 6,3
430 PRINT "  AR = AGE AT WHICH YOU WISH TO RETIRE"
440 PRINT "  AS = AGE AT WHICH SOCIAL SECURITY BENEFITS BEGIN"
450 PRINT "  AZ = AGE AT WHICH CAPITAL IS TO DROP TO ZERO"
460 PLOT 6,2
470 PRINT "  LE = ANNUAL LIVING EXPENSE 1ST YEAR OF RETIREMENT"
480 PRINT "  II = ANNUAL INFLATION-INDEXED INCOME DURING FIRST"
490 PRINT "        YEAR OF RETIREMENT (EXCLUDING SOC. SEC.)"
500 PRINT "  FI = ANNUAL FIXED INCOME THROUGHOUT RETIREMENT"
505 PRINT "  SS = ANNUAL SOC. SEC. BENEFIT IN FIRST YEAR PAID"
510 PLOT 6,3
520 PRINT "  RI = AVERAGE ANNUAL PERCENT INFLATION RATE"
530 PRINT "  RR = AVERAGE AFTER-TAX PERCENT RETURN ON INVESTED"
540 PRINT "        CAPITAL (MUST BE GREATER THAN ZERO PERCENT)"
600 REM  --- INPUT VALUES
610 PLOT 3,0,13,6,6
620 PRINT "ENTER THE FOLLOWING IN YEARS, DOLLARS, OR PERCENT:"
630 PRINT :PLOT 6,3
640 INPUT "  AR = ";A
650 INPUT "  AS = ";B
660 INPUT "  AZ = ";C
670 REM  TEST AGES
680 IF A< = BAND B< = CGOTO 750
690 PLOT 6,1
700 PRINT "AGES MUST NOT DECREASE. HIT 'RETURN' AND TRY AGAIN!"
710 PLOT 6,3:INPUT Q$
720 FOR J= 15TO 19:PLOT 3,0,J,11:NEXT J:GOTO 610
750 PLOT 6,2
760 INPUT "  LE = ";L1
770 INPUT "  II = ";I1
780 INPUT "  FI = ";F
790 INPUT "  SS = ";S
800 PLOT 6,3
810 INPUT "  RI = ";P:P= P/ 100
820 INPUT "  RR = ";Q:Q= Q/ 100
830 REM  TEST PERCENTS
840 IF P> - .2AND P< .7AND Q> 0AND Q< .7GOTO 1000
850 PLOT 6,1
860 PRINT "KEEP PERCENTAGES BETWEEN -20 AND 70."
870 PRINT "HIT 'RETURN' AND TRY AGAIN!"
880 PLOT 6,3:INPUT Q$
890 FOR J= 22TO 26:PLOT 3,0,J,11:NEXT J:PLOT 3,0,22:GOTO 810
1000 REM  --- CHOOSE PROPER CASE
1010 PRINT :E= 2.71828:M= B- A:N= C- B
1020 IF A< BGOTO 2000
1030 REM  --- CALC CASE WHERE A=B
1040 G2= L1- I1- S
1050 X1= N* G2
1055 IF P= QGOTO 1070
1060 X2= G2* (E^ ((P- Q)* N)- 1)/ (P- Q)
1070 X3= F* (1- E^ (- Q* N))/ Q
1080 IF P= QTHEN H1= X1- X3
1090 IF P< > QTHEN H1= X2- X3
1100 H2= H1
1110 GOTO 3000
2000 REM  --- CALC CASE WHERE A<B
2010 REM  CALC INTERVAL B TO C FIRST
2020 K1= (1+ P)^ M:K2= (1+ Q)^ M:REM  FACTORS, AGE A TO B
2030 L2= L1* K1:REM  ANN LIV EXP AT AGE B
2040 I2= I1* K1:REM  INDEXED INCOME AT AGE B
2050 G2= L2- I2- S:REM  EXCESS EXPENSE AT AGE B
2060 X1= N* G2
2065 IF P= QGOTO 2080
2070 X2= G2* (E^ ((P- Q)* N)- 1)/ (P- Q)
2080 X3= F* (1- E^ (- Q* N))/ Q
2090 IF P= QTHEN H2= X1- X3
2100 IF P< > QTHEN H2= X2- X3
2110 REM  H2 IS CAPITAL REQD AT AGE B;
2120 REM  NOW CALC CAPITAL REQD AT AGE A
2130 G1= L1- I1
2140 X6= M* G1
2150 X7= F* (1- E^ (- Q* M))/ Q
2155 IF P= QGOTO 2170
2160 X8= G1* (E^ ((P- Q)* M)- 1)/ (P- Q)
2170 X9= H2/ K2:REM  CAP REQD AT AGE A TO ATTAIN H2 AT AGE B
2180 IF P= QTHEN H1= X6- X7+ X9
2190 IF P< > QTHEN H1= X8- X7+ X9
2200 GOTO 3000
3000 REM  --- DISPLAY CAPITAL REQD
3010 PRINT :PLOT 6,6
3020 PRINT "CAPITAL REQUIRED AT RETIREMENT = $";INT (H1)
3030 PRINT "CAPITAL WHEN SOC. SEC. BEGINS  = $";INT (H2)
3040 PRINT :PLOT 6,1
3050 INPUT "DO YOU WANT TO ENTER NEW VALUES (Y OR N)? ";Q$
3060 IF Q$= "N"GOTO 9000
3070 FOR J= 13TO 31:PLOT 3,0,J,11:NEXT J:GOTO 610
9000 REM  --- END OF PROGRAM
9100 PLOT 15,6,3,27,11:REM  RETURN TO SCROLL MODE
9200 END
9300 REM  --- LIST ON PRINTER AT 300 BAUD
9400 PLOT 14,27,18,3,15,27,13:LIST :PRINT :POKE 33265,0:END