1  REM ****  HP BASIC PROGRAM LIBRARY  ******************************
2  REM
3  REM       GMCRO1: FISCAL POLICY GAME
4  REM
5  REM       36519 REV A  PART 1 OF 2
6  REM
7  REM ****  CONTRIBUTED PROGRAM  ***********************************
10  REM          * * * MACROECONOMIC POLICY GAME #1 * * *
20  REM          (KEITH LUMSDEN, STANFORD G.S.B.,AUG 1971)
100  PRINT "MCRO1 MAY REQUIRE AN HOUR OR MORE TO PLAY CAREFULLY."
105  PRINT "IF YOU THINK THAT YOU MAY POSSIBLY WISH TO PLAY IT"
110  PRINT "IN MORE THAN ONE SITTING, OR MAY WISH TO STOP TO THINK"
115  PRINT "BEFORE CONTINUING, YOU SHOULD CREATE A FILE TO STORE"
120  PRINT "THE DATA GENERATED BY YOUR ECONOMY."
125  PRINT 
130  PRINT "DO YOU WANT THE FLEXIBILITY TO STOP THE GAME AND RETURN"
135  PRINT "LATER   ";
140  INPUT M$
145  IF M$="NO" THEN 255
150  PRINT 
155  PRINT "WHEN THE PROGRAM STOPS, TYPE"
156  PRINT 
160  PRINT "200 FILES DATA1"
165  PRINT "OPEN-DATA1,1"
170  PRINT "RUN-200"
171  PRINT 
175  PRINT "THE PROGRAM WILL NOW STOP TO ALLOW YOU TO TYPE IN THESE LINES."
180  PRINT "TYPE IN THE LINES AFTER THE COMPUTER PRINTS 'DONE'."
185  PRINT 
190  STOP 
205  PRINT "IF YOU DESIRE TO STOP THIS PROGRAM DURING EXECUTION, YOU MAY"
210  PRINT "DO SO BY TYPING '9999' WHEN THE CHANGE IN G IS REQUESTED."
215  PRINT "REMEMBER TO TYPE IN THE CHANGE IN T ALSO.  YOU MAY THEN"
220  PRINT "LOGOFF AND RESUME MCRO1 IN THE YEAR THAT YOU STOP."
225  PRINT "INSTRUCTIONS FOR RESTARTING WILL BE GIVEN WHEN YOU STOP."
230  PRINT 
245  DIM M$[5]
250  DATA 600,520,55,25,50,550,610,1000,0,0
255  PRINT "YOUR OBJECTIVES IN THE NEXT TWENTY YEARS ARE TO KEEP GNP (Y)"
260  PRINT "AS CLOSE AS POSSIBLE TO POTENTIAL OUTPUT (Q) IN CONSTANT DOLLARS,"
265  PRINT "AND TO DETERMINE FROM THE ECONOMY'S PERFORMANCE THE VALUES OF"
270  PRINT "CERTAIN MULTIPLIERS AND PROPENSITIES. "
275  PRINT 
280  PRINT "YOU BEGIN THE FIRST YEAR WITH A SCORE OF 1000. EACH YEAR YOU "
285  PRINT "LOSE THE ABSOLUTE VALUE OF THE DIFFERENCE BETWEEN Y AND Q."
290  PRINT "YOU CAN CONTROL GOVERNMENT EXPENDITURES (G) AND TAXES (T)"
295  PRINT "FOR EACH YEAR BY TYPING IN VALUES FOR THE CHANGES IN G AND T"
300  PRINT "AS REQUESTED. IF THERE IS NO CHANGE TYPE A ZERO.  YOU WILL BE"
305  PRINT "GIVEN ALL VALUES INCLUDING INVESTMENT (I), CONSUMPTION (C),"
310  PRINT "AND DISPOSABLE INCOME (D)."
311  PRINT 
315  PRINT "WHEN REQUESTED TO DO SO, TYPE IN THE VALUES OF G AND T "
320  PRINT "SEPARATED BY A COMMA."
325  PRINT 
360  DIM N$[26]
365  PRINT LIN(2)
370  PRINT "TYPE YOUR NAME  -";
375  INPUT N$
380  READ Y,C,I,G,T,D,Q,W,N,X
385  GOTO 545
390  PRINT "CHANGE IN G,T";
395  INPUT Z3,Z2
400  IF Z3=9999 THEN 2000
405  PRINT "CHECK YOUR WORK. ANY CHANGES? (1=YES,0=NO)  ??";
410  INPUT E9
415  IF E9=1 THEN 390
420  IF N <> 3 THEN 430
425  IF Z3<10 THEN 475
430  IF N <> 12 THEN 445
435  IF T-Z2=0 THEN 500
440  IF Z2>-9 THEN 475
445  IF N<16 THEN 455
450  IF T+Z2-G-Z3<0 THEN 475
455  IF Z3<-G THEN 475
460  IF 250+1*(I+G+Z3-T-Z2)<0 THEN 475
465  IF Z2<-T THEN 475
470  GOTO 500
475  PRINT 
480  PRINT "THE CHANGES YOU MADE ARE NOT PERMISSIBLE. ";
485  PRINT "CHECK YOUR WORK AND RE-ENTER."
490  PRINT 
495  GOTO 390
500  LET T=T+Z2
505  LET G=G+Z3
510  LET N=N+1
515  LET Q=Q*1.03
520  LET Y=250-9*T+10*(I+G)
525  LET D=Y-T
530  LET C=25+.9*D
535  LET W=W-ABS(Q-Y)
540  PRINT 
545  PRINT N$,"GNP ACCOUNTS    YEAR";N
550  PRINT "Q="Q,"Y="Y,"C="C,"I="I
555  PRINT "D="D,"G="G,"T="T,"SCORE="W
560  PRINT 
565  IF N <> 3 THEN 585
570  PRINT "THE PRESIDENT INTRODUCES A POVERTY PROGRAM. YOU MUST RAISE ";
575  PRINT "G NEXT YEAR BY AT LEAST 10."
580  GOTO 390
585  IF N <> 5 THEN 610
590  PRINT "WHAT IS YOUR ESTIMATE OF THE VALUE OF THE GOVERNMENT ";
595  PRINT "EXPENDITURES MULTIPLIER?"
600  LET X=10
605  GOTO 1150
610  IF N <> 7 THEN 635
615  PRINT "A SURGE OF BUSINESS OPTIMISM WILL CAUSE INVESTMENT TO  RISE TO ";
620  PRINT "63 NEXT YEAR, ACCORDING TO A DEPT. OF COMMERCE SURVEY."
625  LET I=63
630  GOTO 390
635  IF N <> 10 THEN 655
640  PRINT "WHAT IS YOUR ESTIMATE OF THE INVESTMENT MULTIPLIER?"
645  LET X=10
650  GOTO 1150
655  IF N <> 12 THEN 680
660  PRINT "RONALD REAGAN HAS JUST BEEN ELECTED PRESIDENT WITH A MANDATE TO ";
665  PRINT "CUT TAXES BY 9 NEXT YEAR.  IF TAXES ARE BELOW 9 CURRENTLY,"
670  PRINT "YOU MUST CUT TAXES TO 0.YOU MUST COMPLY!"
675  GOTO 390
680  IF N <> 13 THEN 695
685  PRINT "PRESIDENT REAGAN'S POLITICAL DEBT IS PAID. SET T AS YOU CHOOSE."
690  GOTO 390
695  IF N <> 14 THEN 715
700  PRINT "WHAT IS YOUR ESTIMATE OF THE TAX MULTIPLIER"
701  PRINT "  NOTE: A NEGATIVE SIGN IS A NECESSARY CONDITION"
702  PRINT "  FOR A CORRECT RESPONSE"
705  LET X=-9
710  GOTO 1150
715  IF N <> 16 THEN 735
720  PRINT "CONGRESS HAS SET AN UPPER LIMIT ON THE NATIONAL DEBT AT ITS ";
725  PRINT "PRESENT LEVEL. YOU MAY HENCEFORTH INCUR SURPLUSES BUT NOT ";
730  PRINT "DEFICITS."
735  IF N <> 18 THEN 760
740  PRINT "WHAT IS YOUR ESTIMATE OF THE MARGINAL PROPENSITY TO CONSUME ";
745  PRINT "OUT OF DISPOSABLE INCOME?"
750  LET X=.9
755  GOTO 1150
760  IF N <> 20 THEN 390
765  PRINT 
770  PRINT "WHAT IS YOUR FINAL ESTIMATE OF MPC";
1010  INPUT F1
1020  PRINT "WHAT IS YOUR FINAL ESTIMATE OF THE G MULTIPLIER";
1030  INPUT X
1040  PRINT "WHAT IS YOUR FINAL ESTIMATE OF THE I MULTIPLIER";
1050  INPUT X1
1060  PRINT "WHAT IS YOUR FINAL ESTIMATE OF THE T MULTIPLIER";
1070  INPUT X2
1080  PRINT 
1090  PRINT "THANK YOU. THE ACTUAL VALUES WERE .9, 10, 10 AND -9."
1100  PRINT "YOUR FINAL SCORE FOR KEEPING Y CLOSE TO Q IS ";W
1110  PRINT 
1120  PRINT "THIS ENDS MCRO1. LOGOFF."
1130  PRINT 
1140  STOP 
1150  LET F1=0
1160  PRINT "ANSWER";
1170  INPUT X1
1180  IF X=X1 THEN 1260
1190  IF F1=1 THEN 1230
1200  LET F1=1
1210  PRINT "INCORRECT; TRY AGAIN."
1220  GOTO 1160
1230  PRINT "STILL INCORRECT. THINK FURTHER ABOUT THIS.YOU WILL BE ASKED";
1240  PRINT "AGAIN LATER. NOW ";
1250  GOTO 1270
1260  PRINT "CORRECT. ";
1270  PRINT "PROCEED TO YEAR"N+1
1280  GOTO 390
1999  STOP 
2000  REM THIS STORES THE DATA FOR USE AT AT LATER TIME WHEN RESTARTING
2001  REM THE PROGRAM
2011  READ #1,1
2020  PRINT #1;N$
2030  PRINT #1;Y,C,I,G,T,D,Q,W,N,X
2040  PRINT "YOUR DATA HAS BEEN STORED IN A FILE DESIGNATED DATA1"
2041  PRINT "TO RESTART, CALL MCRO1 AND TYPE "
2042  PRINT 
2043  PRINT "2510 FILES DATA1"
2044  PRINT "RUN-2500"
2050  STOP 
2499  STOP 
2500  REM THIS RESTARTS THE PROGRAM WHERE IT WAS PREVIOUSLY TERMINATED"
2520  READ #1,1
2530  READ #1;N$
2540  READ #1;Y,C,I,G,T,D,Q,W,N,X
2550  GOTO 540
9999  END 
