2.7 Tout éteint

L’objectif de cet exercice est d’implémenter une interface en mode texte pour le jeu Lights out (https://en.wikipedia.org/wiki/Lights_Out_(game)).

Le principe du jeu est le suivant. On se place sur un plateau de jeu rectangulaire de longueur L et de hauteur H, possédant N = LxH cases. Ces cases peuvent être soit éteintes, soit allumées. On a la règle d’évolution suivante : lorsqu’on choisit une case, celle-ci change d’état ainsi que ses quatre voisines dans les directions Sud, Est, Nord, Ouest, du moins celles qui existent dans les limites du plateau. Les cellules du coin n’ont que deux voisines, et celles de la bordure sauf les coins en ont trois. Le jeu consiste à trouver sur quelles cases appuyer pour finir en ayant toutes les cases éteintes, étant donnée une situation de départ inscrite dans un fichier texte. Un exemple est donné dans la vidéo suivante :

Bonne chance ! Vous pouvez télécharger les niveaux tout prêts  : niveaux.tgz