mirror of
https://github.com/rfivet/BCG101.git
synced 2024-12-21 17:46:28 -05:00
67 lines
2.0 KiB
QBasic
67 lines
2.0 KiB
QBasic
|
1 REM THIS PROGRAM PLAYS THE CARD GAME OF WAR. THE ONLY CHANGE
|
||
|
2 REM IS THAT A TIE MAKES NO SCORE AT ALL. THE PACK IS READ IN
|
||
|
3 REM AND THEN SHUFFLES IN A RANDOM WAY. THE COMPUTER THEN DEALS THE
|
||
|
4 REM CARDS TWO AT A TIME AS LONG AS THE GAME CONTINUES. A RUNNING
|
||
|
5 REM SCORE IS KEPT.
|
||
|
100 PRINT "THIS IS THE CARD GAME OF WAR. EACH CARD IS GIVEN BY SUIT-#";
|
||
|
110 PRINT "AS S-7 FOR SPADE 7. ";
|
||
|
120 PRINT "DO YOU WANT DIRECTIONS";
|
||
|
130 INPUT B$
|
||
|
140 IF B$="NO" THEN 210
|
||
|
150 IF B$="YES" THEN 180
|
||
|
160 PRINT "YES OR NO, PLEASE. ";
|
||
|
170 GOTO 120
|
||
|
180 PRINT "THE COMPUTER GIVES YOU AND IT A 'CARD'. THE HIGHER 'CARD' ";
|
||
|
190 PRINT "(NUMERICALLY) WINS. THE GAME ENDS WHEN YOU CHOOSE NOT";
|
||
|
200 PRINT " TO CONTINUE OR WHEN YOU HAVE FINISHED THE PACK."
|
||
|
210 PRINT
|
||
|
220 PRINT
|
||
|
230 DIM A$(52), L(54)
|
||
|
240 FOR I=1 TO 52
|
||
|
250 READ A$(I)
|
||
|
260 NEXT I
|
||
|
270 RANDOM
|
||
|
280 FOR J=1 TO 52
|
||
|
290 LET L(J)=INT(52*RND(X)+1)
|
||
|
300 FOR K=1 TO J-1
|
||
|
310 IF L(K)<>L(J) THEN 340
|
||
|
320 LET J=J-1
|
||
|
330 GOTO 350
|
||
|
340 NEXT K
|
||
|
350 NEXT J
|
||
|
360 LET P=P+1
|
||
|
370 LET M1=L(P)
|
||
|
380 LET P=P+1
|
||
|
390 LET M2=L(P)
|
||
|
400 PRINT
|
||
|
410 PRINT
|
||
|
420 PRINT "YOU: ";A$(M1), "COMPUTER: ";A$(M2),
|
||
|
430 LET N1=INT((M1-.5)/4)
|
||
|
440 LET N2=INT((M2-.5)/4)
|
||
|
450 IF N1>=N2 THEN 490
|
||
|
460 LET A1=A1+1
|
||
|
470 PRINT "COMPUTER WINS.^G^G^G^G^G YOU HAVE";B1;"; COMPUTER HAS";A1
|
||
|
480 GOTO 540
|
||
|
490 IF N1=N2 THEN 530
|
||
|
500 LET B1=B1+1
|
||
|
510 PRINT "YOU WIN. YOU HAVE";B1;"; COMPUTER HAS";A1
|
||
|
520 GOTO 540
|
||
|
530 PRINT "TIE. NO SCORE CHANGE."
|
||
|
540 IF L(P+1)=0. THEN 610
|
||
|
550 PRINT "DO YOU WANT TO CONTINUE";
|
||
|
560 INPUT V$
|
||
|
570 IF V$="YES" THEN 360
|
||
|
580 IF V$="NO" THEN 650
|
||
|
590 PRINT "YES OR NO, PLEASE. ";
|
||
|
600 GOTO 540
|
||
|
610 PRINT
|
||
|
620 PRINT
|
||
|
630 PRINT "YOU HAVE RUN OUT OF CARDS. FINAL SCORE: YOU--";B1;
|
||
|
640 PRINT "; COMPUTER--";A1
|
||
|
650 PRINT "THANKS FOR PLAYING. IT WAS FUN.^G^G"
|
||
|
660 DATA S-2,H-2,C-2,D-2,S-3,H-3,C-3,D-3,S-4,H-4,C-4,D-4,S-5,H-5,C-5
|
||
|
670 DATA D-5,S-6,H-6,C-6,D-6,S-7,H-7,C-7,D-7,S-8,H-8,C-8,D-8,S-9,H-9
|
||
|
680 DATA C-9,D-9,S-10,H-10,C-10,D-10,S-J,H-J,C-J,D-J,S-Q,H-Q,C-Q,D-Q
|
||
|
690 DATA S-K,H-K,C-K,D-K,S-A,H-A,C-A,D-A
|
||
|
700 END
|