|
- 2 PRINT TAB(33);"POKER"
- 4 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
- 6 PRINT: PRINT: PRINT
- 10 DIM A(50),B(15)
- 20 DEF FNA(X)=INT(10*RND(1))
- 30 DEF FNB(X)=X-100*INT(X/100)
- 40 PRINT "WELCOME TO THE CASINO. WE EACH HAVE $200."
- 50 PRINT "I WILL OPEN THE BETTING BEFORE THE DRAW; YOU OPEN AFTER."
- 60 PRINT "TO FOLD BET 0; TO CHECK BET .5."
- 70 PRINT "ENOUGH TALK -- LET'S GET DOWN TO BUSINESS."
- 80 PRINT
- 90 LET O=1
- 100 LET C=200
- 110 LET S=200
- 120 LET P=0
- 130 REM
- 140 PRINT
- 150 IF C<=5 THEN 3670
- 160 PRINT "THE ANTE IS $5. I WILL DEAL:"
- 170 PRINT
- 180 IF S>5 THEN 200
- 190 GOSUB 3830
- 200 LET P=P+10
- 210 LET S=S-5
- 220 LET C=C-5
- 230 FOR Z=1 TO 10
- 240 GOSUB 1740
- 250 NEXT Z
- 260 PRINT "YOUR HAND:"
- 270 N=1
- 280 GOSUB 1850
- 290 N=6
- 300 I=2
- 310 GOSUB 2170
- 320 PRINT
- 330 IF I<>6 THEN 470
- 340 IF FNA(0)<=7 THEN 370
- 350 LET X=11100
- 360 GOTO 420
- 370 IF FNA(0)<=7 THEN 400
- 380 LET X=11110
- 390 GOTO 420
- 400 IF FNA(0)>=1 THEN 450
- 410 X=11111
- 420 I=7
- 430 Z=23
- 440 GOTO 580
- 450 Z=1
- 460 GOTO 510
- 470 IF U>=13 THEN 540
- 480 IF FNA(0)>=2 THEN 500
- 490 GOTO 420
- 500 Z=0
- 510 K=0
- 520 PRINT "I CHECK."
- 530 GOTO 620
- 540 IF U<=16 THEN 570
- 550 Z=2
- 560 IF FNA(0)>=1 THEN 580
- 570 Z=35
- 580 V=Z+FNA(0)
- 590 GOSUB 3480
- 600 PRINT "I'LL OPEN WITH $";V
- 610 K=V
- 620 GOSUB 3050
- 630 GOSUB 650
- 640 GOTO 820
- 650 IF I<>3 THEN 760
- 660 PRINT
- 670 PRINT "I WIN."
- 680 C=C+P
- 690 PRINT "NOW I HAVE $";C;"AND YOU HAVE $";S
- 700 PRINT "DO YOU WISH TO CONTINUE";
- 710 INPUT H$
- 720 IF H$="YES" THEN 120
- 730 IF H$="NO" THEN 4100
- 740 PRINT "ANSWER YES OR NO, PLEASE."
- 750 GOTO 700
- 760 IF I<>4 THEN 810
- 770 PRINT
- 780 PRINT "YOU WIN."
- 790 S=S+P
- 800 GOTO 690
- 810 RETURN
- 820 PRINT
- 830 PRINT "NOW WE DRAW -- HOW MANY CARDS DO YOU WANT";
- 840 INPUT T
- 850 IF T=0 THEN 980
- 860 Z=10
- 870 IF T<4 THEN 900
- 880 PRINT "YOU CAN'T DRAW MORE THAN THREE CARDS."
- 890 GOTO 840
- 900 PRINT "WHAT ARE THEIR NUMBERS:"
- 910 FOR Q=1 TO T
- 920 INPUT U
- 930 GOSUB 1730
- 940 NEXT Q
- 950 PRINT "YOUR NEW HAND:"
- 960 N=1
- 970 GOSUB 1850
- 980 Z=10+T
- 990 FOR U=6 TO 10
- 1000 IF INT(X/10^(U-6))<>10*INT(X/10^(U-5)) THEN 1020
- 1010 GOSUB 1730
- 1020 NEXT U
- 1030 PRINT
- 1040 PRINT "I AM TAKING";Z-10-T;"CARD";
- 1050 IF Z=11+T THEN 1090
- 1060 PRINT "S"
- 1070 PRINT
- 1080 GOTO 1100
- 1090 PRINT
- 1100 N=6
- 1110 V=I
- 1120 I=1
- 1130 GOSUB 2170
- 1140 B=U
- 1150 M=D
- 1160 IF V<>7 THEN 1190
- 1170 Z=28
- 1180 GOTO 1330
- 1190 IF I<>6 THEN 1220
- 1200 Z=1
- 1210 GOTO 1330
- 1220 IF U>=13 THEN 1270
- 1230 Z=2
- 1240 IF FNA(0)<>6 THEN 1260
- 1250 Z=19
- 1260 GOTO 1330
- 1270 IF U>=16 THEN 1320
- 1280 Z=19
- 1290 IF FNA(0)<>8 THEN 1310
- 1300 Z=11
- 1310 GOTO 1330
- 1320 Z=2
- 1330 K=0
- 1340 GOSUB 3050
- 1350 IF T<>.5 THEN 1450
- 1360 IF V=7 THEN 1400
- 1370 IF I<>6 THEN 1400
- 1380 PRINT "I'LL CHECK"
- 1390 GOTO 1460
- 1400 V=Z+FNA(0)
- 1410 GOSUB 3480
- 1420 PRINT "I'LL BET $";V
- 1430 K=V
- 1440 GOSUB 3060
- 1450 GOSUB 650
- 1460 PRINT
- 1470 PRINT "NOW WE COMPARE HANDS:"
- 1480 J$=H$
- 1490 K$=I$
- 1500 PRINT "MY HAND:"
- 1510 N=6
- 1520 GOSUB 1850
- 1530 N=1
- 1540 GOSUB 2170
- 1550 PRINT
- 1560 PRINT "YOU HAVE ";
- 1570 K=D
- 1580 GOSUB 3690
- 1590 H$=J$
- 1600 I$=K$
- 1610 K=M
- 1620 PRINT "AND I HAVE ";
- 1630 GOSUB 3690
- 1640 IF B>U THEN 670
- 1650 IF U>B THEN 780
- 1660 IF H$="A FLUS" THEN 1700
- 1662 IF FNB(M)<FNB(D) THEN 780
- 1664 IF FNB(M)>FNB(D) THEN 670
- 1670 PRINT "THE HAND IS DRAWN."
- 1680 PRINT "ALL $";P;"REMAINS IN THE POT."
- 1690 GOTO 140
- 1700 IF FNB(M)>FNB(D) THEN 670
- 1710 IF FNB(D)>FNB(M) THEN 780
- 1720 GOTO 1670
- 1730 Z=Z+1
- 1740 A(Z)=100*INT(4*RND(1))+INT(100*RND(1))
- 1750 IF INT(A(Z)/100)>3 THEN 1740
- 1760 IF A(Z)-100*INT(A(Z)/100)>12 THEN 1740
- 1765 IF Z=1 THEN 1840
- 1770 FOR K=1 TO Z-1
- 1780 IF A(Z)=A(K) THEN 1740
- 1790 NEXT K
- 1800 IF Z<=10 THEN 1840
- 1810 N=A(U)
- 1820 A(U)=A(Z)
- 1830 A(Z)=N
- 1840 RETURN
- 1850 FOR Z=N TO N+4
- 1860 PRINT Z;"-- ";
- 1870 GOSUB 1950
- 1880 PRINT " OF";
- 1890 GOSUB 2070
- 1900 IF Z/2<>INT(Z/2) THEN 1920
- 1910 PRINT
- 1920 NEXT Z
- 1930 PRINT
- 1940 RETURN
- 1950 K=FNB(A(Z))
- 1960 IF K<>9 THEN 1980
- 1970 PRINT "JACK";
- 1980 IF K<>10 THEN 2000
- 1990 PRINT "QUEEN";
- 2000 IF K<>11 THEN 2020
- 2010 PRINT "KING";
- 2020 IF K<>12 THEN 2040
- 2030 PRINT "ACE";
- 2040 IF K>=9 THEN 2060
- 2050 PRINT K+2;
- 2060 RETURN
- 2070 K=INT(A(Z)/100)
- 2080 IF K<>0 THEN 2100
- 2090 PRINT " CLUBS",
- 2100 IF K<>1 THEN 2120
- 2110 PRINT " DIAMONDS",
- 2120 IF K<>2 THEN 2140
- 2130 PRINT " HEARTS",
- 2140 IF K<>3 THEN 2160
- 2150 PRINT " SPADES",
- 2160 RETURN
- 2170 U=0
- 2180 FOR Z=N TO N+4
- 2190 B(Z)=FNB(A(Z))
- 2200 IF Z=N+4 THEN 2230
- 2210 IF INT(A(Z)/100)<>INT(A(Z+1)/100) THEN 2230
- 2220 U=U+1
- 2230 NEXT Z
- 2240 IF U<>4 THEN 2310
- 2250 X=11111
- 2260 D=A(N)
- 2270 H$="A FLUS"
- 2280 I$="H IN"
- 2290 U=15
- 2300 RETURN
- 2310 FOR Z=N TO N+3
- 2320 FOR K=Z+1 TO N+4
- 2330 IF B(Z)<=B(K) THEN 2390
- 2340 X=A(Z)
- 2350 A(Z)=A(K)
- 2360 B(Z)=B(K)
- 2370 A(K)=X
- 2380 B(K)=A(K)-100*INT(A(K)/100)
- 2390 NEXT K
- 2400 NEXT Z
- 2410 X=0
- 2420 FOR Z=N TO N+3
- 2430 IF B(Z)<>B(Z+1) THEN 2470
- 2440 X=X+11*10^(Z-N)
- 2450 D=A(Z)
- 2460 GOSUB 2760
- 2470 NEXT Z
- 2480 IF X<>0 THEN 2620
- 2490 IF B(N)+3<>B(N+3) THEN 2520
- 2500 X=1111
- 2510 U=10
- 2520 IF B(N+1)+3<>B(N+4) THEN 2620
- 2530 IF U<>10 THEN 2600
- 2540 U=14
- 2550 H$="STRAIG"
- 2560 I$="HT"
- 2570 X=11111
- 2580 D=A(N+4)
- 2590 RETURN
- 2600 U=10
- 2610 X=11110
- 2620 IF U>=10 THEN 2690
- 2630 D=A(N+4)
- 2640 H$="SCHMAL"
- 2650 I$="TZ, "
- 2660 U=9
- 2670 X=11000
- 2680 GOTO 2740
- 2690 IF U<>10 THEN 2720
- 2700 IF I=1 THEN 2740
- 2710 GOTO 2750
- 2720 IF U>12 THEN 2750
- 2730 IF FNB(D)>6 THEN 2750
- 2740 I=6
- 2750 RETURN
- 2760 IF U>=11 THEN 2810
- 2770 U=11
- 2780 H$="A PAIR"
- 2790 I$=" OF "
- 2800 RETURN
- 2810 IF U<>11 THEN 2910
- 2820 IF B(Z)<>B(Z-1) THEN 2870
- 2830 H$="THREE"
- 2840 I$=" "
- 2850 U=13
- 2860 RETURN
- 2870 H$="TWO P"
- 2880 I$="AIR, "
- 2890 U=12
- 2900 RETURN
- 2910 IF U>12 THEN 2960
- 2920 U=16
- 2930 H$="FULL H"
- 2940 I$="OUSE, "
- 2950 RETURN
- 2960 IF B(Z)<>B(Z-1) THEN 3010
- 2970 U=17
- 2980 H$="FOUR"
- 2990 I$=" "
- 3000 RETURN
- 3010 U=16
- 3020 H$="FULL H"
- 3030 I$="OUSE, "
- 3040 RETURN
- 3050 G=0
- 3060 PRINT:PRINT "WHAT IS YOUR BET";
- 3070 INPUT T
- 3080 IF T-INT(T)=0 THEN 3140
- 3090 IF K<>0 THEN 3120
- 3100 IF G<>0 THEN 3120
- 3110 IF T=.5 THEN 3410
- 3120 PRINT "NO SMALL CHANGE, PLEASE."
- 3130 GOTO 3060
- 3140 IF S-G-T>=0 THEN 3170
- 3150 GOSUB 3830
- 3160 GOTO 3060
- 3170 IF T<>0 THEN 3200
- 3180 I=3
- 3190 GOTO 3380
- 3200 IF G+T>=K THEN 3230
- 3210 PRINT "IF YOU CAN'T SEE MY BET, THEN FOLD."
- 3220 GOTO 3060
- 3230 G=G+T
- 3240 IF G=K THEN 3380
- 3250 IF Z<>1 THEN 3420
- 3260 IF G>5 THEN 3300
- 3270 IF Z>=2 THEN 3350
- 3280 V=5
- 3290 GOTO 3420
- 3300 IF Z=1 THEN 3320
- 3310 IF T<=25 THEN 3350
- 3320 I=4
- 3330 PRINT "I FOLD."
- 3340 RETURN
- 3350 IF Z=2 THEN 3430
- 3360 PRINT "I'LL SEE YOU."
- 3370 K=G
- 3380 S=S-G
- 3390 C=C-K
- 3400 P=P+G+K
- 3410 RETURN
- 3420 IF G>3*Z THEN 3350
- 3430 V=G-K+FNA(0)
- 3440 GOSUB 3480
- 3450 PRINT "I'LL SEE YOU, AND RAISE YOU";V
- 3460 K=G+V
- 3470 GOTO 3060
- 3480 IF C-G-V>=0 THEN 3660
- 3490 IF G<>0 THEN 3520
- 3500 V=C
- 3510 RETURN
- 3520 IF C-G>=0 THEN 3360
- 3530 IF (O/2)<>INT(O/2) THEN 3600
- 3540 PRINT "WOULD YOU LIKE TO BUY BACK YOUR WATCH FOR $50";
- 3550 INPUT J$
- 3560 IF LEFT$(J$,1)="N" THEN 3600
- 3570 C=C+50
- 3580 O=O/2
- 3590 RETURN
- 3600 IF O/3<>INT(O/3) THEN 3670
- 3610 PRINT "WOULD YOU LIKE TO BUY BACK YOUR TIE TACK FOR $50";
- 3620 INPUT J$
- 3630 IF LEFT$(J$,1)="N" THEN 3670
- 3640 C=C+50
- 3650 O=O/3
- 3660 RETURN
- 3670 PRINT "I'M BUSTED. CONGRATULATIONS!"
- 3680 STOP
- 3690 PRINT H$;I$;
- 3700 IF H$<>"A FLUS" THEN 3750
- 3710 K=INT(K/100)
- 3720 GOSUB 2080
- 3730 PRINT
- 3740 RETURN
- 3750 K=FNB(K)
- 3760 GOSUB 1960
- 3770 IF H$="SCHMAL" THEN 3790
- 3780 IF H$<>"STRAIG" THEN 3810
- 3790 PRINT " HIGH"
- 3800 RETURN
- 3810 PRINT "'S"
- 3820 RETURN
- 3830 PRINT
- 3840 PRINT "YOU CAN'T BET WITH WHAT YOU HAVEN'T GOT."
- 3850 IF O/2=INT(O/2) THEN 3970
- 3860 PRINT "WOULD YOU LIKE TO SELL YOUR WATCH";
- 3870 INPUT J$
- 3880 IF LEFT$(J$,1)="N" THEN 3970
- 3890 IF FNA(0)>=7 THEN 3930
- 3900 PRINT "I'LL GIVE YOU $75 FOR IT."
- 3910 S=S+75
- 3920 GOTO 3950
- 3930 PRINT "THAT'S A PRETTY CRUMMY WATCH - I'LL GIVE YOU $25."
- 3940 S=S+25
- 3950 O=O*2
- 3960 RETURN
- 3970 IF O/3<>INT(O/3) THEN 4090
- 3980 PRINT "WILL YOU PART WITH THAT DIAMOND TIE TACK":
- 3990 INPUT J$
- 4000 IF LEFT$(J$,1)="N" THEN 4080
- 4010 IF FNA(0)>=6 THEN 4050
- 4020 PRINT "YOU ARE NOW $100 RICHER."
- 4030 S=S+100
- 4040 GOTO 4070
- 4050 PRINT "IT'S PASTE. $25."
- 4060 S=S+25
- 4070 O=O*3
- 4080 RETURN
- 4090 PRINT "YOUR WAD IS SHOT. SO LONG, SUCKER!"
- 4100 END
|