.
..
Tp_note
TD2.adb (download) (view)
TD3.adb (download) (view)
TP2.adb (download) (view)
file.adb (download) (view)
file.ads (download) (view)

with Ada.Text_IO, ada.integer_text_io;
use Ada.Text_IO, ada.integer_text_io;

with file;
use file;

procedure TD3 is
  procedure put(f : in MaFile) is
    ftmp : MaFile := f;
  begin
    while not fileVide(ftmp) loop
      put(tete(ftmp), 4);
      defiler(ftmp);
    end loop;
    New_line;
  end;
 
  subtype MaPile is MaFile;
  initPile : constant MaPile := initFile;
  procedure empiler(p : in out MaPile; e : in integer) is
    ptmp : MaFile;
  begin
    while not fileVide(p) loop
      enfiler(ptmp, tete(p));
      defiler(p);
    end loop;
   
    enfiler(p, e);
    while not fileVide(ptmp) loop
      enfiler(p, tete(ptmp));
      defiler(ptmp);
    end loop;    
  end;
 
  procedure depiler(p : in out MaPile) is
  begin
    defiler(p);
  end;
 
  function sommet(p : MaPile) return Integer is
  begin
    return tete(p);
  end;
 
  function pileVide(p : MaPile) return Boolean is
  begin
    return fileVide(p);
  end;
 
  f : MaFile;
  p : MaPile;
begin
  f := initFile;
  enfiler(f, 1);
  enfiler(f, 2);
  enfiler(f, 3);
  enfiler(f, 4);
  enfiler(f, 5);
  enfiler(f, 6);
  enfiler(f, 7);
  enfiler(f, 8);
  enfiler(f, 9);
  enfiler(f, 10);
  put(f);
  defiler(f);
  put(f);
  enfiler(f, 11);
  put(f);
 
  p := initPile;
  empiler(p, 1);
  empiler(p, 2);
  put(sommet(p));
  depiler(p);
  put(sommet(p));  
end TD3;
 
Webmaster : pierrefrancois.leon@laposte.net

Valid XHTML 1.0 Strict Valid CSS!