ED n·3 Algorithmique et Programmation--------Corrigé |
Exercice 1
Enoncé
On veut représenter les cours dispensés
dans une école. Un cours est caractérisé par la matière
enseignée ( maths, anglais, français, histoire) , le nombre
d'inscrits, le jour (sauf les samedi et dimanche) et son heure de début
(entre 9h et 17h). Chaque cours a une durée d'une heure.
Question 2
Ecrire la procédure afficheCours
qui prend en argument un cours et affiche les informations qui le caractérisent.
Travail demandé
-- les Types sont déclarés dans la question précédente
-- il est préférable de nommer cette procédure
put plutôt que afficheCours
-- on suppose que le paquetage Text_io a été importé
with Ada.Text_io;use Ada.Text_io;
procedure put(c:in Cours)
is
begin
put("Le cours
de ");put(Matiere'image(c.laMatiere));
put(" a lieu a
");put(Integer'image(c.heure));put(" heures le ");
put(Jour'image(c.leJour));put("
et compte ");put(Integer'image(c.nbInscrits));
put_line(" inscrits");new_line;
end put;
Autre solution
-- utilisation des paquetages génériques
with Ada.Text_io;use Ada.Text_io;
procedure put(c:in Cours)
is
package matiere_io is new enumeration_io(Matiere);
use matiere_io;
package jour_io
is new enumeration_io(Jour);
use jour_io;
begin
put("Le cours
de ");put(c.laMatiere);
put(" a lieu a
");put(c.heure,width=>2);put(" heures le ");
put(c.leJour);put("
et compte ");put(c.nbInscrits,width=>2);
put_line(" inscrits");new_line;
end put;