Nim game

You are encouraged to solve this task according to the task description, using any language you may know.
Nim is a simple game where the second player ─── if they know the trick ─── will always win.



The game has only 3 rules:

   start with   12   tokens
   each player takes   1,  2,  or  3   tokens in turn
  the player who takes the last token wins.


To win every time,   the second player simply takes 4 minus the number the first player took.   So if the first player takes 1,   the second takes 3 ─── if the first player takes 2,   the second should take 2 ─── and if the first player takes 3,   the second player will take 1.



Task

Design a simple Nim game where the human player goes first, and the computer always wins. The game should enforce the rules.




100 PROGRAM "Nim.bas"
110 RANDOMIZE 
120 CLEAR SCREEN
130 LET TOKENS=12
140 PRINT "Starting with";TOKENS;"tokens.":PRINT 
150 DO
160   PRINT "How many tokens will you take? (1-3) ";
170   DO
180     LET K=VAL(INKEY$)
190   LOOP UNTIL K>0 AND K<4
200   LET TOKENS=MAX(TOKENS-K,0):LET G=0
210   PRINT K:PRINT TAB(19);TOKENS;"remainig.":PRINT 
220   IF TOKENS>0 THEN
230     LET L=MOD(TOKENS,4)
240     IF L=0 THEN LET L=MIN(RND(3)+1,TOKENS)
250     LET TOKENS=TOKENS-L:LET G=-1
260     PRINT "Computer takes";L;"tokens.";TOKENS;"remaining.":PRINT 
270   END IF
280 LOOP WHILE TOKENS>0
290 IF G THEN
300   PRINT "Computer wins!"
310 ELSE
320   PRINT "You win!"
330 END IF