ED n·3 Algorithmique et Programmation--------Corrigé



Objectifs
 



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 3

Ecrire un programme qui saisit les informations relatives à un cours et les affiche.

Solution

with Ada.Integer_Text_io;use Ada.Integer_Text_io;

procedure cours_io is
     type Matiere is (francais,anglais,maths,histoire);
     type Jour is (lundi,mardi,mercredi,jeudi,vendredi);
     type Cours is
         record
               laMatiere:Matiere;
               nbInscrits:Natural;
               leJour:Jour;
               heure:Integer range 9..17;
         end record;
    package Matiere_io is new enumeration_io(Matiere);
    package Jour_io is new enumeration_io(Jour);

    procedure put(c:in Cours) is
    begin
          put("Le cours de ");Matiere_io.put(c.laMatiere);
          put(" a lieu a ");put(c.heure,width=>2);put(" heures le ");
          Jour_io.put(c.leJour);put(" et compte ");put(c.nbInscrits,width=>2);
          put_line(" inscrits");new_line;new_line;
     end put;

     procedure get(c:out Cours) is
     begin
          put("Entrez la matiere : ");Matiere_io.get(c.laMatiere);new_line;
          put("Entrez le nombre d'inscrits : ");get(c.nbInscrits);new_line;
          put("Entrez le jour : ");Jour_io.get(c.leJour);new_line;
          put("Entrez l'heure : ");get(c.heure);new_line;
          new_line;
     end get;

     unCours:Cours;

begin
     get(unCours);
     put(unCours);
end cours_io;