In het spelletje vier op rij steken twee spelers afwisselend een ronde schijf in een rekje. De ene speler steekt gele ('G') schrijven in het rekje, de andere rode ('R') schijven.

Vier op een rij
Vier op een rij

Een rekje kan je voorstellen als een lijst van rijen. In die rijen staan de letters 'R' (rode schijf), 'G' (gele schijf) of 'O' (lege plaats).

[['G', 'G', 'R', 'R', 'R', 'G', 'O'], ['O', 'G', 'G', 'O', 'O', 'O', 'O'], ['O', 'R', 'O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O', 'O', 'O']]

In leesbare vorm ziet dat er bijvoorbeeld als volgt uit:

OOOOOOO
OOOOOOO
OOOOOOO
OROOOOO
OGGOOOO
GGRRRGO

Wanneer je straks rekjes en zetten van spelers programmeert, hou dan rekening met volgende drie zaken:

Opgave

Voorbeeld

>>> printbaar_rek([['R', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O']])
OOOOO
OOOOO
OOOOO
ROOOO
>>> printbaar_rek([['R', 'R', 'R', 'R', 'G'], ['G', 'G', 'R', 'G', 'R'], ['O', 'G', 'O', 'O', 'O'], ['O', 'R', 'O', 'O', 'O']])
OROOO
OGOOO
GGRGR
RRRRG

>>> speel('G',3,[['R', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O']])
[['R', 'O', 'O', 'G', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O'], ['O', 'O', 'O', 'O', 'O']]
>>> speel('G',1,[['R', 'R', 'R', 'R', 'G'], ['G', 'G', 'R', 'G', 'R'], ['O', 'G', 'O', 'O', 'O'], ['O', 'R', 'O', 'O', 'O']])
[['R', 'R', 'R', 'R', 'G'], ['G', 'G', 'R', 'G', 'R'], ['O', 'G', 'O', 'O', 'O'], ['O', 'R', 'O', 'O', 'O']]

Bronnen

John Carl Villanueva (2018). How many atoms are there in the universe? Universe Today. 1