école nationale d'ingénieurs de Tunis
|
Classes : lAGC, IAGM, !AGI |
Examen algorithmique |
Semestre : I Session de contrôle |
||
|
Enseignants : MmeGabzili, Mme Salem, MerAgingui, Melle Hamdi, MelleRhouma . |
||||
|
Documents non autorisés |
Durée : 1h30 |
Pages : 2 |
||
Exercice : (8 points)
La fonction suivante permet d'enfiler un élément à la file F de e PfileElem.
Elle est truffée d'erreurs, il y a six erreurs de syntaxe et une command manquante pour le bon fonctionnement de la fonction.
function FLEnfiler(F: PFileElem; Nom, Prenom: string): PFileElem; var
f_par ; temp: PFileElem;
begin
new(temp);
temp.Elem.Nom := Nom;
temp^.Elem.Prenom := Prenom;
temp^.Suiv := null;
if F = null then
result = temp
else
begin
f_par := F;
while f_par^.Suiv # null do
f_par := f_par^.Suiv;
f_par".Suiv := temp;
end;
Problème : Les invités du mariage (12 points)
Pour aider un couple à organiser son mariage, un étudiant propose de réaliser un logiciel pour gérer les invités et placer les convives parmi les tables du banquet.
Il dispose des types suivants pour mémoriser le nom d'un invité
TYPE Sexe_t = (homme, femme);
Invitet = record
nom, prenom string[63J;
adresse : string[255];
sexe : Sexe_t;
a_cleja_une_place boolean;
end;
1 Faire une procédure .4g/invite (i Invite _t); qui affiche sur une seule ligne le nom et le prénom de
l'invité i.
2. Les invités sont mémorisés dans un tableau dans leur ordre de saisie : COVST MaxInvite = 200;
TYPE Listelnvite_t = arrav [1 MaxInvite] of Invite _t:
Ecrire une fonction CombienDe (li, ni. s,) qui rem. oie le nombre d'invités de sexe s Sexe_t dans le tableau /i List,Invite_t parmi les ni invités.