Projet Informatique Théorique 2016
Instructions et Documentation
|
Le projet est à réaliser en C par groupes de 2 personnes maximum. L'utilisation de la bibliothèque fournie est obligatoire. Il n'y aura pas de soutenance et on ne demande pas de rapport, mais le code doit être commenté. La notation tiendra compte du degré de réalisation du sujet. La notation sera faite à l'aide de tests automatiques, qui ressembleront aux tests fournis (voir la section test de cette page) !
Le code source du projet est disponnible à l'adresse : http://www.labri.fr/perso/boussica/archives/cours/licence3/automates_grammaires/2015-2016/projet_2016.tar.gz
La programme est à rendre au format archive tar compressée par gzip, sous le nom nom1-nom2.tgz par mail à l'adresse atana et sa@l abri. frbouss. Le sujet du mail doit avoir la forme suivante : [PROJET IT2] Nom1 - Nom2. La décompression de l'archive doit fournir un répertoire nom1-nom2 (sans accent et sans espace, mettre _ à la place) dans lequel se trouveront seulement 1 fichier: ica@ labri .frautomate.c.
La première partie concerne l'implémentation de quelques automates et algorithmes concernant les automates. Les fonctions à implémentées sont les suivantes :
Le projet consiste à écrire des fonctions implémentant ces algorithmes en complétant le fichier automate.c fourni dans cette archive.
Aucun autre fichier ne doit être modifié (les autres seront remplacés par les fichiers originaux lors de l'évaluation). Vous devez aussi utiliser le fichier makefile fourni. Le fichier d'interface automate.h contient les prototypes des fonctions, y compris celles à implémenter. Dans le fichier automate.c, le code des fonctions à écrire est remplacé par la macro A_FAIRE ou A_FAIRE_RETURN(). Le code nécessaire est commenté, et la documentation est disponible via ces pages web. La liste des fonctions à implémenter est aussi disponible ici, ou par l'onglet Pages Associées ci-dessus.
Des tests sont fournis dans le répertoire ./tests
pour certaines fonctions, comme test_creer_automate_du_melange.c qui teste la fonction creer_automate_du_melange(). Pour les lancer, il suffit d'utiliser make check, qui compile les tests, les lance et affiche le nombre de tests réussis et le nombre de tests échoués. Il est fortement conseillé d'ajouter vos propres tests car nous utiliserons un fichier plus complet lors de l'évaluation (un pour chaque fonction). Il suffit pour cela de créer un nouveau fichier par test dans le répertoire ./tests
, en suivant le motif des fichiers de tests déjà écrits.