Nim game: Difference between revisions
Added XPL0 example.
(Nim game in various dialects BASIC (BASIC256, QBasic, Run BASIC, PureBasic and Yabasic)) |
(Added XPL0 example.) |
||
Line 4,337:
Tokens remaining 0
Computer wins!
</pre>
=={{header|XPL0}}==
{{trans|Go}}
<syntaxhighlight lang "XPL0">func ShowTokens(Tokens);
int Tokens;
[Text(0, "Tokens remaining: ");
IntOut(0, Tokens);
CrLf(0); CrLf(0);
];
int Tokens, T, CT;
[Tokens:= 12;
loop [ShowTokens(Tokens);
Text(0, " How many Tokens (1, 2 or 3)? ");
T:= IntIn(0);
if T < 1 or T > 3 then
Text(0, "^m^jMust be a number between 1 and 3. Try again.^m^j^m^j")
else [CT:= 4 - T;
Text(0, " Computer takes ");
IntOut(0, CT);
Text(0, " token");
if CT # 1 then ChOut(0, ^s);
Text(0, ".^m^j^m^j");
Tokens:= Tokens - 4;
];
if Tokens = 0 then
[ShowTokens(0);
Text(0, " Computer wins!^m^j");
return;
];
];
]</syntaxhighlight>
{{out}}
<pre>
Tokens remaining: 12
How many Tokens (1, 2 or 3)? 2
Computer takes 2 tokens.
Tokens remaining: 8
How many Tokens (1, 2 or 3)? 4
Must be a number between 1 and 3. Try again.
Tokens remaining: 8
How many Tokens (1, 2 or 3)? 1
Computer takes 3 tokens.
Tokens remaining: 4
How many Tokens (1, 2 or 3)? 3
Computer takes 1 token.
Tokens remaining: 0
Computer wins!
|