1 PRINT "PYRAMID-- HANNU KURKI-SUONIO, HELSINKI, FINLAND" 2 PRINT 3 PRINT " IT IS YEAR 2710 B.C. YOU ARE RULING THE ANCIENT EGYPT AFTER" 4 PRINT "THE DEATH OF YOUR PREDECESSOR THE LATE PHARAOH KHAFRA. AN OR-" 5 PRINT "ACLE HAS PREDICTED THAT YOU WILL DEPART THIS LIFE IN EIGHT " 6 PRINT "YEARS AND THEREFORE YOU ARE BOUND TO START BUILDING YOUR PYR-" 7 PRINT "AMId DIRECTLY"'16"." 10 REM HP CONTRIBUTED LIBRARY, 2/75 40 DEF FNM(X)=(X^.5*15-X^.3*22)/1.5-X/33 50 DEF FNN(X)=(X^3/5.E+08+X^.1*200)/1.5 60 DEF FNO(X)=SQR(X/100)*100 70 LET B=F=0 80 READ B1,D,E,G,I1 170 PRINT 200 LET A=C=I=K=M=N=0 210 LET B=B*(B>0)+B1 220 LET F=F+1 260 PRINT "YOU'VE GOT"B"GOLD RINGS" 270 PRINT "HOW MANY METRES HIGH DO YOU WISH TO BUILD YOUR PYRAMID "; 280 INPUT C1 285 IF C1>200 THEN 280 290 IF C1>15 THEN 320 300 PRINT "DON'T BE TOO MODEST" 310 GOTO 280 320 PRINT "HOW MANY SLAVES DO YOU ACQUIRE "; 330 INPUT O 340 IF (1000*O)^.6>.7*B THEN 330 350 IF O>987 THEN 400 360 PRINT "TOO FEW, MY BOY, TOO FEW" 370 GOTO 330 400 LET B=INT(B-(1000*O)^.6) 420 PRINT "HOW MANY OF THEM DO YOU APPOINT TO FOREMEN "; 430 INPUT P 440 IF PO THEN 430 450 PRINT "HOW MANY SLAVES TO THE QUARRY "; 460 INPUT X1 480 PRINT "HOW MANY TO CARRY STONES "; 490 INPUT X2 510 IF O <= P+X1+X2 OR X1+X2<0 THEN 440 540 LET T=O-P 550 LET X3=T-X1-X2 560 PRINT "THERE ARE"X3"SLAVES LEFT AS BUILDING LABOUR" 565 PRINT "YOU'VE STILL GOT"B"GOLD RINGS" 570 PRINT "HOW MUCH FOR TOOLS ETC."; 580 INPUT S 590 IF S >= B OR S<1 THEN 580 600 LET B=B-S 700 FOR I=1 TO I1 710 IF I=1 THEN 740 720 GOSUB 5000 730 GOTO 750 740 GOSUB 5300 750 IF T<599 THEN 6100 760 GOSUB 5500 780 IF B<0 THEN 6200 800 GOSUB 5500 1010 LET A=INT(A+ABS((S^.2)*(C1/20)^E*H/10*(4-SQR(C/C1)*G)*T1*D)) 1030 IF A>C1^3/2+10 THEN 6300 1040 LET C=INT(C1-(((C1^3/2)-A)*2)^.333) 1100 PRINT 1101 PRINT 1130 PRINT I"YEAR" 1140 PRINT 1160 PRINT A"STONES",C"METRES" 1170 PRINT 1210 PRINT "SLAVES STARVED "N 1220 PRINT "SLAVES DIED OF OVERWORK"M 1250 PRINT "SLAVES ESCAPED "K 1260 PRINT 1270 PRINT "YOU HAVE NOW"T"WORKERS AND"B"GOLD RINGS" 1500 NEXT I 1800 PRINT "YOU ARE APPROACHING THE END" 2020 PRINT "YOUR PYRAMID HAS NOW"A"STONES AND"C"METRES OF HEIGHT" 2050 IF B>3786 THEN 6400 2060 IF B<2 THEN 2105 2100 PRINT "YOUR SUCCESSOR WILL INHERIT THE REMAINING"B"GOLD RINGS" 2105 PRINT 2520 IF C<10 OR C/C1<.4 THEN 3000 2540 PRINT "PYRAMID OF PHARAOH MENKAURA"F;TAB(35)".",C"METRES" 2545 IF I=0 THEN 2580 2550 FOR I=5 TO (C1-C)/3 STEP 6 2560 PRINT TAB(33-I)".."TAB(34+I)".." 2570 NEXT I 2580 FOR J=I+3 TO C1/3 STEP 2 2590 IF J>12.8*I/10 THEN 2630 2600 PRINT TAB(37.5-J)"*"TAB(37-I+3.4*(J-I))".."; 2610 PRINT TAB(34+I-3.4*(J-I))".."TAB(33.5+J)"*" 2620 GOTO 2640 2630 PRINT TAB(37.5-J)"*"TAB(35)"I"TAB(33.5+J)"*" 2640 NEXT J 2650 FOR I=C1/3-3 TO 1 STEP -4.5 2660 PRINT TAB(35-I)".."TAB(35)"I"TAB(36+I)".." 2670 NEXT I 3000 LET C[F]=C+F/100 3040 PRINT 3050 PRINT "DOES YOUR SUCCESSOR WANT TO BUILD A PYRAMID (1 OR 0) "; 3060 INPUT Q 3070 PRINT 3071 PRINT "########" 3072 PRINT 3090 IF Q=0 OR F>9 THEN 4000 3120 GOTO 170 4000 PRINT "THERE ARE"F"PYRAMIDS ON THE SEPULCHER AREA" 4002 PRINT 4010 FOR I=1 TO F 4020 LET K=0 4030 FOR J=1 TO F 4040 IF C[J]= 0 THEN 5150 5130 PRINT "NEGATIVE NUMBERS WEREN'T KNOWN IN THE ANCIENT EGYPT" 5140 GOTO 5110 5150 LET P=P+Q 5160 LET T=O-P 5300 PRINT "HOW MANY HOURS MUST THE SLAVES WORK DAILY "; 5310 INPUT H 5311 IF H<0 OR H>20 THEN 5310 5320 PRINT "HOW MUCH WILL YOU SPEND ON FOOD NEXT YEAR "; 5330 INPUT R 5350 IF R >= B OR R<0 THEN 5330 5370 LET B=B-R 5390 LET Q=N=INT(O-40*R/(H+I/1.5))*(40*R/(H+I/1.5)10) 5450 GOSUB 6000 5470 LET Q=K=INT(FNM(O)*T/(2*P))*(PFNM(O))*FNM(O)/P) 5540 LET T1=T1+(K+M+N)/2*T1/T 5610 RETURN 6000 LET X1=ABS((T-Q)*X1/T) 6010 LET X2=ABS((T-Q)*X2/T) 6020 LET X3=ABS((T-Q)*X3/T) 6040 LET T=T-Q 6050 LET O=T+P 6060 RETURN 6100 PRINT 6105 LET K5=(N+M+K)/15 6106 IF T<301 THEN 6110 6107 PRINT "WORKS CAN'T BE CONTINUED, BECAUSE NEARLY" 6110 PRINT "ALL WORKERS"; 6115 IF N