Projet final de Programmation orientée objet 2021-2022.
https://anri.up8.site/ecosysteme/
img | ||
includes | ||
src | ||
.gitignore | ||
Makefile | ||
README.md |
Écosystème
Informations UP8
Nom | Anri KENNEL |
Classe | L2-X |
Numéro d'étudiant | 20010664 |
anri.kennel@etud.univ-paris8.fr | |
Cycle universitaire | 2021-2022 |
Module | Programmation orientée objet |
But
Programme qui simule un univers cohérent composé de quelques animaux et végétaux.
Description
- Animaux placés aléatoirement dans l'univers au début de la simulation
- Déplacement des animaux d'une case par tour (soit 9 possibilités)
- Interface texte avec un repère style echequier
- Reproduction des espèces
Utilisation
Récupération et compilation
Cloner le programme avec soit :
- En SSH :
git clone git@code.up8.edu:Anri/ecosyteme.git
- En HTTPS :
git clone https://git.kennel.ml/Paris8/Ecosyteme.git
Une fois dans le projet, pour compiler le programme, utilisezmake
.
Pour compiler le programme avec les options de debug, il est possible de faire
make dev
.
Utilisation
./ecosyteme
lance le programme avec les paramètres par défaut, soit :- Un univers 5x6
- 9 moutons
- 4 loups
./ecosysteme m n M L
avec :m
la longueur etn
la largeur de l'universM
le nombre de moutonsL
le nombre de loups
Améliorations
- Possibilité de sauvegarder/charger un univers existant
- Possibilité de mettre la simulation en pause (et de la reprendre)
- Déplacement des animaux intelligent
- Rythme de reproduction (louve ne peut faire un petit qu’une fois tous les n tours)
- Trouve les meilleurs paramètres pour faire durer l’univers le plus longtemps possible
- Lancer plusieurs simulation en même temps
Infos
- Testé avec
g++ (GCC) 11.2.0
. - Débuggé avec
valgrind-3.17.0
etvalgrind-3.18.1
(arguments utilisés :--leak-check=full --show-leak-kinds=all --track-origins=yes -s
). - J'ai essayé de suivre les bonne pratiques détaillés dans ce document.