Modéliser le jeu est très important et demande réflexion et compréhension du jeu, il faut réussir à ne garder que l'essentiel. Dans l'ordianteur c'est avec notre modélisation que sera enregistré le jeu.
En maths on travaille énormément sur la modélisation (un droite du plan c'est modélisable par trois nombres, un cercle par un centre et un rayon,...) donc les matheux sont normalement un peu plus alise pour modéliser.
Voilà trois facons de modéliser le jeu de nim :
On a une variable joueur de type entier pour stocker le tour du joueur (qui doit jouer) et un tableau allumettes de N_TOTAL cases où chaque case est un bool qui vaut true si il y a une allumette et false si il n'y en a pas.
On a une variable joueur de type entier pour stocker le tour du joueur (qui doit jouer) et une variable de type entier reste_a_jouer qui donne le nombres restant d'allumettes.
On a deux variables de type liste d'entiers joueur1 et joueur2 qui conservent les coups des différents joueurs. si joueur1 = [1,2] et joueur2 = [3] cela signifie que le joueur 1 à ôté une allumette puis le joueur 2 en a ôté 3 et le joueur 1 en a ôté 2 et c'est au joueur 2 de jouer.
Le nombre initial d'allumettes est plus une constante qu'une variable en jeu mais rien n’empêche de la faire varier dans les options par exemple (dans ce cas elle devient variable).
On utilisera la deuxième modélisation par la suite.