Algorithmes et structures de données Eté 2003
Travaux pratiques G. Falque et C.-L. Mottaz Jiang
Série 4 – 0.5 pts – individuel, pour le 19 mai 2003
Le «!jeu de la vie!»
Sous le nom (un peu pompeux ?) de Jeu de la Vie ( Game of Life ou Life ) on désigne un jeu
inventé par le mathématicien John Horton Conway au début des années 70.
Le jeu de la vie se présente sous la forme d'un tableau (matrice) dont chaque case peut contenir
ou non une «!cellule!».
Tout se passe ainsi : à chaque génération, l'état de chaque case à la génération suivante est décidé
en fonction de son état et du nombre de cellules qui l'entourent!(entre 0 et 8) :
• une cellule vivante ne survivra que si elle a 2 ou 3 voisines précisement (elle ne doit être
ni isolée ni étouffée).
• une cellule apparaît dans une case vide à la génération suivante, si et seulement si cette
case est entourée de précisément 3 cellules (car il faut de la vie pour engendrer la vie).
En résumé : 2 ou 3 voisines pour survivre, 3 pour naître.
Exemple
(source!: la page de Thomas Morin!: http://t0m.free.fr/jdlv/jdlv.htm,)
But du TP
Écrire une applet Java qui, à partir d’une situation de départ, produit les générations successives
selon les règles du jeu de la vie.
L’applet devra être munie d’un bouton «!suivant!» qui calcule et dessine la génération suivante.
On peut voir un exemple sur la page (http://cui.unige.ch/isi/cours/std/exe03/tp4/exemple.html)
Pour représenter la surface du jeu on utilisera un tableau bidimensionnel de booléens
int DIM = 30
boolean jeu[][] = new boolean[30][30]