Opdracht 2. voorbereiding
Array voorbereiden
Tot nu toe hebben we alleen naar rij 1 gekeken waar we de lege waarde vervingen door alle mogelijk opties (1,2,3 en 4). Dat deden we op de volgende manier:
$sudoku = array(2,3,0,4);
$sudoku[2] = array(1,2,3,4);
Dit moet voor alle lege velden in de array gebeuren. Omdat we niet altijd precies weten waar de lege waardes zijn moeten we dit automatiseren.
Daarbij gaan we dus uit van onderstaande array:
$sudoku = array(
array(2, 3, 0, 4),
array(1, 0, 2, 0),
array(4, 0, 0, 1),
array(0, 1, 4, 0)
);
$mogelijkeWaardes = array(1, 2, 3, 4);
De grote vraag is nu hoe spoor ik alle 0 waardes op en vervang ik die door de mogelijke waardes?
Om te lopen gebruik je de functie foreach, let op dat je dan eerst door de rijen loopt en dat je met nog een foreach door de velden moet lopen (zie animatie hieronder, je loopt dus van groen naar rood).
Je kan dit ook schematisch beschrijven (iets vereenvoudigde array):
Opdracht 1. algoritme 1 - deel 1 Opdracht 3. algoritme 1 - deel 2