Anonymous user
21 game: Difference between revisions
m
no edit summary
(Added various BASIC dialects (BASIC256, Chipmunk Basic, MSX Basic, PureBasic, QBasic, True BASIC and Yabasic)) |
imported>Lacika7 mNo edit summary |
||
Line 1,221:
1410 data "Commodore 64","VIC-20","Commodore 128"
1420 data "PET","Plus/4","Commodore 16"</syntaxhighlight>
==={{header|IS-BASIC}}===▼
<syntaxhighlight lang="is-basic">100 PROGRAM "21Game.bas"▼
110 RANDOMIZE ▼
120 LET SUM,ADD=0▼
130 LET TURN=RND(2)▼
140 CLEAR SCREEN▼
150 PRINT "21 is a two player game, the game is played by choosing a number (1, 2, or 3) to be added to the running total. The game is won by the player whose chosen number causes the running total to reach exactly 21."▼
160 PRINT "The running total starts at zero. One player will be the computer.":PRINT ▼
170 DO ▼
180 LET TURN=1-TURN▼
190 SET #102:INK 3:PRINT "The sum is";SUM:SET #102:INK 1▼
200 IF TURN=1 THEN▼
210 PRINT "It is your turn.":PRINT "How many would you like to add? (1-3): ";▼
220 LET ADD=READKEY▼
230 IF ADD>21-SUM THEN PRINT "You can only add";21-SUM▼
240 ELSE ▼
250 LET ADD=4-MOD((SUM-1),4)▼
260 IF ADD=4 THEN LET ADD=MIN(RND(3)+1,SUM)▼
270 PRINT "It is the computer's turn.":PRINT "The computer adds";ADD▼
280 END IF ▼
290 PRINT :LET SUM=SUM+ADD▼
300 LOOP WHILE SUM<21▼
310 IF TURN=1 THEN▼
320 PRINT "Congratulations. You win."▼
330 ELSE ▼
340 PRINT "Bad luck. The computer wins."▼
350 END IF ▼
360 END ▼
370 DEF READKEY▼
380 DO ▼
390 LET T$=INKEY$▼
400 LOOP WHILE T$>"3" OR T$<"1"▼
410 PRINT T$:LET READKEY=VAL(T$)▼
420 END DEF </syntaxhighlight>▼
==={{header|MSX Basic}}===
Line 3,740 ⟶ 3,775:
when (y == 1) $ do
putStrLn $ (snd names) ++ " has won the game"</syntaxhighlight>
▲=={{header|IS-BASIC}}==
▲<syntaxhighlight lang="is-basic">100 PROGRAM "21Game.bas"
▲110 RANDOMIZE
▲120 LET SUM,ADD=0
▲130 LET TURN=RND(2)
▲140 CLEAR SCREEN
▲150 PRINT "21 is a two player game, the game is played by choosing a number (1, 2, or 3) to be added to the running total. The game is won by the player whose chosen number causes the running total to reach exactly 21."
▲160 PRINT "The running total starts at zero. One player will be the computer.":PRINT
▲170 DO
▲180 LET TURN=1-TURN
▲190 SET #102:INK 3:PRINT "The sum is";SUM:SET #102:INK 1
▲200 IF TURN=1 THEN
▲210 PRINT "It is your turn.":PRINT "How many would you like to add? (1-3): ";
▲220 LET ADD=READKEY
▲230 IF ADD>21-SUM THEN PRINT "You can only add";21-SUM
▲240 ELSE
▲250 LET ADD=4-MOD((SUM-1),4)
▲260 IF ADD=4 THEN LET ADD=MIN(RND(3)+1,SUM)
▲270 PRINT "It is the computer's turn.":PRINT "The computer adds";ADD
▲280 END IF
▲290 PRINT :LET SUM=SUM+ADD
▲300 LOOP WHILE SUM<21
▲310 IF TURN=1 THEN
▲320 PRINT "Congratulations. You win."
▲330 ELSE
▲340 PRINT "Bad luck. The computer wins."
▲350 END IF
▲360 END
▲370 DEF READKEY
▲380 DO
▲390 LET T$=INKEY$
▲400 LOOP WHILE T$>"3" OR T$<"1"
▲410 PRINT T$:LET READKEY=VAL(T$)
▲420 END DEF </syntaxhighlight>
=={{header|J}}==
|