All pastes #941299 Raw Edit

Untitled

public text v1 · immutable
·published 2008-03-13 16:46 UTC
rendered paste body
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);