Sujet

Connectez vous à Ubiquity pour obtenir le sujet et les sources du TP

Exemple d'exécution du programme


Consignes

Appliquez la méthodologie : écriture d'une fonction, puis compilation. Tant qu'il y a des erreurs ou des warning, on ne passe pas à la fonction suivante !

Nous vous conseillons de tester les fonctions avec des tests unitaires. La fonction nbVoisinsVivants est par exemple tester avec la suite de tests du programme testJeuDeLaVie :

$ make tests
gcc -o src/testJeuDeLaVie.o -c src/testJeuDeLaVie.c -Wall -pedantic -g -std=c99 -Iinclude
gcc -o src/GrilleJeuDeLaVie.o -c src/GrilleJeuDeLaVie.c -Wall -pedantic -g -std=c99 -Iinclude
gcc -o src/JeuDeLaVie.o -c src/JeuDeLaVie.c -Wall -pedantic -g -std=c99 -Iinclude
gcc -o tests/testJeuDeLaVie src/testJeuDeLaVie.o src/GrilleJeuDeLaVie.o src/JeuDeLaVie.o -lm -lcurses -lcunit
$ tests/testJeuDeLaVie


CUnit - A unit testing framework for C - Version 2.1-2
http://cunit.sourceforge.net/


Suite: Tests boite noire : nb voisins
Test: nb voisins d'une cellule morte ...passed
Test: nb voisins d'une cellule vivante ...passed
Test: nb voisins dans un coin ...passed

Run Summary: Type Total Ran Passed Failed Inactive
suites 1 1 n/a 0 0
tests 3 3 3 0 0
asserts 3 3 3 0 n/a

Elapsed time = 0.000 seconds


Compétences :

Compétences pré-requises :

  • DEV003 : Savoir développer des modules C (.h et .c)
  • DEV005 : Savoir créer des bibliothèques statiques ou dynamiques
  • DEV006 : Savoir écrire un code C lisible
  • DEV008 : Savoir traduire des passages de paramètre algorithme en passage de paramètre C
  • DEV012 : Savoir utiliser et passer en paramètre des fonctions

Compétences utilisées dans ce TP :

  • DEV003 : Savoir développer des modules C (.h et .c)
  • DEV005 : Savoir créer des bibliothèques statiques ou dynamiques
  • DEV006 : Savoir écrire un code C lisible
  • DEV007 : Savoir traduire/adapter un algorithme en fonction C
  • DEV008 : Savoir traduire des passages de paramètre algorithme en passage de paramètre C
  • DEV009 : Maîtriser les pointeurs, tableaux et chaînes de caractères
  • DEV012 : Savoir utiliser et passer en paramètre des fonctions
  • TU001 : Savoir écrire des tests unitaires à l’aide du framework Cunit
Modifié le: mardi 4 octobre 2022, 15:27