Jeu de la Vie - Automate Cellulaire en C++

Image du projet

Le Jeu de la Vie, conçu par le mathématicien John Conway, est un automate cellulaireoù des cellules évoluent sur une grille selon des règles précises. Dans ce projet, nous avons développé une implémentation en C++ en appliquant les principes de la programmation orientée objet (POO).

Le programme prend en entrée un fichier décrivant l’état initial de la grille, avec des cellules vivantes et mortes. À chaque itération, les cellules évoluent selon trois règles simples :

  • 💀 Une cellule vivante meurt si elle a moins de 2 ou plus de 3 voisines vivantes.
  • 🌱 Une cellule morte devient vivante si elle a exactement 3 voisines vivantes.
  • 🔁 Sinon, une cellule conserve son état.

Le projet comprend deux modes de simulation : un mode console, qui affiche l’évolution sous forme de texte, et un mode graphique, qui utilise la bibliothèque SFML pour une visualisation en temps réel.

Des fonctionnalités avancées ont été intégrées, comme la gestion d’une grille torique(les bords sont connectés entre eux), l’ajout de cellules obstacles et la possibilité deplacer des motifs dynamiques via le clavier. Une optimisation parallèle permet également d’accélérer la simulation sur les grandes grilles.