But de la séance :
On s'intéresse à la gestion d'un répertoire téléphonique qui permet d'enregistrer des relations du type (Nom de personne -> Numéro de téléphone) et d'effectuer des consultations sur ces relations. On suppose ici que deux personnes différentes ont des noms différents et qu'une personne n'a qu'un seul numéro de téléphone.
Dans la version demandée, on structure le répertoire comme une liste chaînée globale dont les éléments contiennent les informations Nom de personne et Numéro de téléphone. Cette liste est ordonnée sur le nom des personnes, et les éléments la constituant sont alloués et désalloués dynamiquement.
Les primitives permettant de construire et de consulter ce répertoire sont les suivantes :
Lexique :
VERSION 1 :
NoTel : un type
Rep : la liste chaînée de <Nom, NoTel>, ordonnée sur le Nom
NoTel : un type
Sous_rep : le type liste chaînée de <Nom, NoTel>, ordonnée sur le Nom
Rep : un tableau sur [1..26] de Sous_rep
aucune personne de nom Nom ne doit déjà etre enregistrée}
la personne de nom Nom doit etre déjà présente dans le répertoire}
retourne la chaine vide si aucune personne de nom Nom n?est présente dans le répertoire}