Program Printout: Lemonade

THE CHILDREN are screaming, the sun is roasting, it is a perfect day for the beach. You are the budding entrepreneur on the lemonade stand, trying to outsell your rivals and lay the foundations of a fast food empire.

You start with capital of $50 and have to decide how much to spend on advertising, how much on stock and what price to charge for each glass.

Lower-case letters in the listing signify inverse video (16K T/S1000,ZX81).

Comic strip: surfers at the lemonade stand (part 1)
Comic strip: surfers at the lemonade stand (part 1)
Comic strip: surfers at the lemonade stand (part 2)
Comic strip: surfers at the lemonade stand (part 2)
 278 PRINT "L   E   M   O   N   A   D   E"
279 PRINT "-----------------------------"
280 PRINT AT 10,0;"DO YOU REQUIRE INSTRUCTIONS ? (Y/N)"
290 LET A$=INKEY$
300 IF A$="Y" THEN GOTO 9000
310 IF A$="N" THEN GOTO 330
320 GOTO 290
330 CLS
340 PRINT AT 10,0;"HOW MANY PLAYERS (2-4) ?"
350 INPUT P
360 IF P<2 OR P>4 THEN GOTO 350
361 CLS
362 PRINT AT 10,0;"HOW MANY DAYS DO YOU WANT TO PLAY(MAX=14) ?"
363 INPUT AD
364 IF AD<1 OR AD>14 THEN GOTO 363
369 CLS
370 DIM M(P)
380 DIM A(P)
390 DIM R(P)
395 DIM L(P)
400 DIM B(P)
410 DIM Q(P)
420 DIM I(P)
430 FOR F=1 TO P
440 LET M(F)=25
450 NEXT F
460 FOR F=1 TO P
470 LET A(F)=0
480 NEXT F
490 FOR F=1 TO P
500 LET R(F)=0
510 NEXT F
520 FOR F=1 TO P
530 LET B(F)=0
531 NEXT F
532 FOR E=1 TO AD
533 PRINT "L E M O N A D E day ";E;AT 2,0;"(thirty two graphic 7s)"
534 LET W=INT (RND*4)
535 IF W=0 OR W=3 THEN LET W$="sunny"
536 IF W=1 THEN LET W$="rain"
537 IF W=2 THEN LET W$="snow"
538 PRINT AT 10,10;W$
539 PRINT AT 15,0;"LEMONDSVILLE WEATHER REPORT"
540 FOR U=1 TO 100
541 NEXT U
551 LET AP=INT (RND*3)+1
552 LET BP=INT ((RND*4)+1)*0.5
553 FOR F=1 TO P
560 CLS
570 PRINT "L E M O N A D E"
571 PRINT ,,"(twenty nine graphic 7s)"
580 PRINT ,,,,,,"player ";F
590 PRINT ,,,,"money $";M(F)
600 PRINT ,,,,"advertisements ? EACH BOARD COSTS $";AP
610 INPUT A(F)
660 PRINT AT 12,15;A(F)
670 PRINT AT 13,0;" "
680 LET M(F)=M(F)-(A(F)*AP)
690 PRINT AT 9,7;M(F);" "
700 PRINT AT 15,0;"bottles ? EACH BOTTLE MAKES 10 GLASSES"
710 PRINT "BOTTLES COST $";BP
720 INPUT B(F)
770 PRINT AT 15,8;B(F)
775 LET M(F)=M(F)-(B(F)*BP)
790 PRINT AT 9,7;M(F);" "
800 PRINT AT 16,0;" price of lemonade per glass ? IN DOLLARS"
810 INPUT L(F)
820 LET L(F)=INT ABS L(F)
830 PRINT AT 18,28;L(F);"p"
835 PRINT AT 19,0;" "
840 FOR T=1 TO 100
850 NEXT T
860 NEXT F
870 IF W$="sunny" THEN LET G=175
880 IF W$="rain" THEN LET G=75
890 IF W$="snow" THEN LET G=10
900 CLS
910 PRINT "L E M O N A D E day ";E
920 PRINT ,,"(thirty two graphic 7s)"
921 PRINT AT 6,9;W$
925 LET V=INT (RND*50)+G
930 PRINT AT 6,9;W$
940 PRINT AT 10,0;"TODAY THERE WERE ";V;" VISITORS"
950 FOR U=1 TO 125
960 NEXT U
970 CLS
980 DIM S(P)
990 FOR C=1 TO P
1000 LET Q(C)=(B(C)*10)
1010 NEXT C
1020 FOR C=1 TO P
1030 LET I=V*10
1040 LET S(C)=I/L(C)
1050 IF L(C)>30 AND L(C)<=50 THEN LET S(C)=INT (RND*(V/(V-2)))
1060 IF L(C)>50 THEN LET S(C)=0
1070 LET Z=(RND*(A(C)*5))
1080 LET S(C)=S(C)+(Z*2)
1085 LET S(C)=INT (S(C)*0.75)
1090 NEXT C
1095 LET N=0
1100 FOR O=1 TO P
1110 LET N=N+S(O)
1120 NEXT O
1130 IF N>V THEN LET M=N-V
1140 IF N>V THEN LET M=INT (M/P)
1150 IF N>V THEN FOR Y=1 TO P
1160 IF N>V THEN LET S(Y)=S(Y)-M
1170 IF N>V THEN NEXT Y
1180 FOR H=1 TO P
1190 IF S(H)>Q(H) THEN LET S(H)=Q(H)
1195 IF S(H)<0 THEN LET S(H)=0
1196 IF S(H)>V THEN LET S(H)=V
1200 NEXT H
1210 FOR J=1 TO P
1220 PRINT "L E M O N A D E"
1230 PRINT ,,"(twenty nine graphic 7s)"
1241 LET MY=INT (S(J)*L(J))/100
1242 LET M(J)=M(J)+MY
1250 PRINT ,,,,"player ";J;" money $";M(J);" "
1260 PRINT ,,,,"you sold ";S(J);" glasses"
1265 PRINT ,,,,"you had enough lemonade for ";Q(J)
1266 PRINT ,,,,"price of lemonade per glass ";L(J);"p"
1267 PRINT ,,,,"advertisements ";A(J)
1270 PRINT ,,,,"profit $";MY-BP*B(J)-AP*A(J)
1280 FOR U=1 TO 100
1290 NEXT U
1300 CLS
1310 NEXT J
1320 NEXT E
1330 GOSUB 10
1335 PRINT AT 5,19;
1340 FOR U=1 TO P
1345 PRINT TAB 19;"player ";CHR$ (U+156)
1350 PRINT TAB 21;"$";M(U)
1360 PRINT
1365 PRINT
1370 NEXT U
1380 PRINT AT 3,0;"ANOTHER GAME (Y OR N) ?"
1390 LET X$=INKEY$
1400 IF X$="Y" THEN GOTO 330
1410 IF X$="N" THEN STOP
1420 GOTO 1390
8998 SAVE "LEMONADe"
8999 RUN
9000 CLS
9010 PRINT " L E M O N A D E"
9020 PRINT ,,,,,,"THE OBJECT OF THIS GAME IS TO MAKE AS MUCH MONEY {$} AS POSSIBLE."
9025 PRINT "YOU OWN A STALL NEAR A BEACH IN THE RESORT OF LEMONDSVILLE.YOU SELL LEMONADE AND TRY TO MAKE A PROFIT.TO START WITH YOU HAVE $50 TO BUY LEMONADE FROM THE WHOLE-SALER."
9030 PRINT "YOU CAN ALSO ADVERTISE YOUR LEMONADE BUT IT ALL COSTS MONEY."
9040 PRINT AT 21,0;"PRESS ANY KEY"
9050 IF INKEY$="" THEN GOTO 9050
9060 GOTO 330
9500 FOR F=1 TO 5
9510 NEXT F
9520 RETURN

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.