Théorie des graphes : Analyse et conception d'un programme de gestion des étudian
Télécharger PDFUNIVERSITE CADI AYYAD
Facult ́e PolyDisciplinaire de Safi
Fili`ere SMI/SMA
2019−2020Structures de Don ́ees
TD1 / TP1 : Structure De Donn ́ees
A distance
Exercice I : Liste et structures
On consid`ere les structures suivantes pour caract ́eriser un ́etudiant :
typedef strcut {int j ; int m ; int a;}date;
typedef struct { int CNE; char nom[25]; date ddn;} etudiant;}
tyepdef struct cellule { etudaint val;
struct cellule * suivant;}*ListeEtd;
Programmez les fonctions suivantes :
1.SaiseDateetAfficheDatepur saisir et afficher une date.
2.SaisieEtudiantetAfficheEtudiantpour saisir et afficher un ́etudiant.
3.AjouterEtduiantpour ajouter un ́etudiant `a la fin de la liste.
4.ChercherEtudiantpour chercher un ́etudiant.
5.SupprimerEtudiantpour supprimer un ́etudiant.
6.AfficheListeEtudiantpour afficher la liste des ́etudiant.
Exercice II : Manipulation d’un Ensemble d’entiers
Un ensemble math ́ematique estun groupement d’objets distincts, appel ́es ́el ́ements
de cet ensemble. La th ́eorie des ensembles est l’ ́etude des propri ́et ́es et des op ́erations sur des
ensembles (appartenance, inclusion, r ́eunion,?). Elle repr ́esente une branche essentielle des
math ́ematiques.
Dans ce probl`eme on se propose de repr ́esenter des ensembles finis d’entiers strictement
positif par les listes chaˆın ́ees d ́efinies en langage C comme suit :
typedef struct ens{
int nombre ; //nombre entier strictement positif
struct ens *suivavnt ; // l’adresse de l’ ́el ́ement suivant
} *EnsembleListe;
Programmez les fonctions suivantes :
1. ́
Ecrire une fonctionInsereEnDebutqui ins`ere une valeur au d ́ebut de l’ensemble.
2. ́
Ecrire une fonctionInsereEnFinqui ins`ere une valeur `a la fin de l’ensemble.
3. ́
Ecrire une fonctionSupprimerEltqui supprime un ́el ́ement de l’ensemble.
4. ́
Ecrire une fonctionverifierEnsemblequi retourne 1 si les ́el ́ements sont distincts et 0sinon. 1A. Bendarag
UNIVERSITE CADI AYYAD
Facult ́e PolyDisciplinaire de Safi
Fili`ere SMI/SMA
2019−2020Structures de Don ́ees
5. ́
Ecrire une fonctionappartienEnsemblequi retourne 1 si un ́el ́ement appartient `a un
ensemble et 0 sinon.
6. ́
Ecrire une fonctionInclusion.
7. ́
Ecrire une fonctionUnion.
8. ́
Ecrire une fonctionIntersection.
Exercice III : Liste doublement chaˆın ́ee
On dispose d’une liste doublement chaˆın ́ee contenant des entiers class ́es dans l’ordre
d ́ecroissant. La structure de donn ́ees utilis ́ee pour repr ́esenter un ́el ́ement de la chaˆıne est la
suivante :
typedef struct cellule { int data;
struct cellule *svt;
struct cellule *prec;
} *PtrCell;
Vous devez programmer :
1. Une fonctionInsertqui permet d’ins ́erer un nouvel entier dans la liste en respectant le
classement. Si cet entier est d ́ej`a pr ́esent dans la liste, la fonction renvoie un message
d’erreur.
2. Une fonctionSupprqui permet de rechercher et d’ ́eliminer un entier dans la liste. Si
cet entier n’est pas dans la liste, la fonction renvoie un message d?erreur.
3. Une fonctionAffichequi affiche les ́el ́ements de la liste.
2A. Bendarag