Vous êtes sur la page 1sur 3

TD3

TDA ELEMENT

Les primitives du TDA ELEMENT:


ELEMENT elementCreer(void) ;
void elementLire(ELEMENT*);
void elementDetruire (ELEMENT);
void elementAfficher(ELEMENT);
void elementAffecter(ELEMENT*, ELEMENT);
void elementCopier(ELEMENT *, ELEMENT) ;
int elementComparer(ELEMENT, ELEMENT);

Exercice 1:

1. Ecrire le code du fichier ELTREL.H qui permet de réaliser le TDA ELEMENT par une
structure RÉEL (un réel est caractérisé par une partie entière [ent] et une partie décimale
[dec] : stockage indirect).
2. Ecrire le code du fichier ELTREL.C qui permet de définir les primitives du TDA
ELEMENT.
Exercice 2:
Le code du fichier ELTOCT.H qui permet de réaliser le TDA ELEMENT par une structure
OCTET (Un octet est caractérisé par une suite binaire [oct] : stockage indirect), est défini
comme suit :
typedef struct
{
char * oct; // On a huit caractères (8 bits) à réserver auxquels on ajoute le caractère '\0'
// Initialement, les 8 cases de oct contiennent le caractère ‘0’
}OCTET, *ELEMENT;

‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘0’ ‘\0’


0 1 2 3 4 5 6 7 8
1. Ecrire le code du fichier ELTOCT.C qui permet de définir les primitives du TDA
ELEMENT.
2. Ecrire une fonction int Code_ASCII(ELEMENT e) qui permet de renvoyer le code ascii
d’un octet donné e. Exemple : Code_ASCII ( ‘‘00001101’’ ) = 13.
3. Ecrire une fonction char Caractere(ELEMENT e) qui permet de renvoyer le caractère
correspondant à un octet donné e. Exemple : Caractere(‘‘01000001’’) = ‘A’.
Exercice 3 :
1. Ecrire le code du fichier ELTEMP.H qui permet de réaliser le TDA ELEMENT par une
structure EMPLOYÉ (un employé est caractérisé par son numéro [num], son nom [nom]
et son adresse [adr] : stockage direct).
2. Ecrire le code du fichier ELTSDD.H qui sert à définir le fichier d’implémentation.
3. Ecrire le code du fichier ELTEMP.C qui permet de définir les primitives du TDA
ELEMENT.

Exercice 4:
Une équation de second degré est définie dans IR comme suit : a x² + b x + c = 0 ; a, b et c
étant les coefficients de l’équation qui sont de type réel. Exemple : 2.5 x² + 1/3 x – 9 = 0
1. Ecrire le code du fichier ELTEQT.H qui permet de réaliser le TDA ELEMENT par une
structure EQUATION (une équation est caractérisée par ses trois coefficients a, b et c :
stockage indirect).
2. Ecrire le code du fichier ELTEQT.C qui permet de définir les primitives du TDA
ELEMENT.
3. Ecrire une fonction double delta(ELEMENT e) qui permet de renvoyer le discriminant
delta d’une équation donnée e.
4. Ecrire une procédure void solutionsDansIR(ELEMENT e) qui permet de calculer et
d’afficher les solutions d’une équation donnée e dans IR.
5. Si le discriminant delta est strictement négatif, l’équation n’admet pas de solutions dans
IR mais elle en admet dans l’ensemble des nombres complexes . On se propose donc de
réaliser le TDA ELEMENT1 par une structure COMPLEXE (un nombre complexe z est
caractérisé par une partie réelle a et une partie imaginaire b sous la forme z = a +
bi où a et b sont des réels quelconques et i un symbole tel que i²= -1 : stockage indirect).
Ecrire le code du fichier ELTCPX.H permettant de réaliser le TDA ELEMENT1.
6. Ecrire le code du fichier ELTCPX.C qui permet de définir les primitives du TDA
ELEMENT1.
7. Ecrire une procédure void solutionsDansC (ELEMENT e) qui permet de calculer et
d’afficher les solutions d’une équation donnée e dans .
8. Ecrire une fonction COMPLEXE sommeComplexes(COMPLEXE c1, COMPLEXE
c2) qui permet de renvoyer la somme de deux nombres complexes c1 et c2.

Exercice 5:
1. Ecrire le code du fichier ELTETD.H qui permet de réaliser le TDA ELEMENT par une
structure ETUDIANT (un étudiant est caractérisé par son numéro d'inscription [num], son
nom [nom], et sa date de naissance [date_naiss]: stockage indirect). Le champ date_naiss
est de type DATE dont la structure est définie comme suit :
typedef struct
{
int jour;
int mois;
int annee;
}DATE, *date;
2. Ecrire le code du fichier ELTPRIM.H qui contient la déclaration des primitives du
TDA ELEMENT.
3. Ecrire le code du fichier ELTETD.C qui permet de définir les primitives du TDA
ELEMENT.

Vous aimerez peut-être aussi