with Ada.Unchecked:Deallocation; package Immatriculation is type T_Info is record Etudiant : T_Etudiant; Numero : Positive; Date : T_Date; end record type T_Element; type T_Lien is access T_Element; type T_Element is record Information : T_Info; Suivant : T_Lien; end record; type T_Queue_Dynamique is record Tete : T_Lien; Queue: T_Lien; end record procedure Libérer is new Ada.Unchecked.Deallocation(T_Element, T_Lien); Liste_Vide : exception; -- Si la liste est vide -- Insère un etudiant avec toutes ses informations en fin de liste procedure Insérer_Etudiant (Liste : in out T_Queue_Dynamique; Info : in T_Info); -- Supprime l'etudiant avec toutes ses informations, séléctionné par son numero procedure Effacer_Etudiant (Liste : in out T_Queue_Dynamique; Info : out T_Info); -- Affiche toutes les immatriculations deja insérée dans l ordre d'entrée procedure Tout_Afficher (Liste : in T_Queue_Dynamique);