.
..
ex01a.adb (download) (view)
ex01b.adb (download) (view)
ex02a.adb (download) (view)
ex02b.adb (download) (view)
ex03a.adb (download) (view)
ex03b.adb (download) (view)
ex04a.adb (download) (view)
ex04b.adb (download) (view)
ex05a.adb (download) (view)

with Ada.Text_Io, Ada.Integer_Text_Io;
use Ada.Text_Io, Ada.Integer_Text_Io;

-- Affichage matrice identité
procedure Ex03a is
   N : Natural;
begin
   -- saisie
   Put("Veuillez rentrer un nombre >= 2 : ");
   Get(N);

   -- Algo 1
   Put_Line("*");
   -- Traitement des lignes 2 à N - 1
   for I in 2 .. N - 1 loop
      Put('*');
      -- affichage de I - 2 espaces
      for J in 2 .. I - 1 loop
         Put(' ');
      end loop;
      Put_Line("*");
   end loop;
   for J in 1 .. N loop
      Put('*');
   end loop;


   New_Line;   New_Line;
   -----------------------------------------------------------------

   -- Algo 2
   -- Traitement des lignes
   for I in 1 .. N loop
      -- Traitement des colonnes
      for J in 1 .. I loop
         -- Si nous sommes sur le bord du triangle
         -- J = 1 -> bord gauche
         -- J = I -> bord droite
         -- I = N -> base du triangle
         if J = 1 or J = I or I = N then
            Put('*');
         else
            Put(' ');
         end if;
      end loop;
      New_Line;
   end loop;
end;
 
Webmaster : pierrefrancois.leon@laposte.net

Valid XHTML 1.0 Strict Valid CSS!