{Terreno Antonio}
uses
    pila_lst,listeric,crt;

procedure menu;

begin
   clrscr;
   writeln ('MENU'' OPERAZIONI:');
   writeln ('[ a ] --> crea');
   writeln ('[ b ] --> push elemento in pila');
   writeln ('[ c ] --> pop elemento ');
   writeln ('[ d ] --> verifica se piena');
   writeln ('[ e ] --> verifica se vuota');
   writeln ('[ f ] --> visualizza lo stato');
   writeln ('[ x ] --> Uscita');
end;

var
   opzione: char;
   pila: tipo_pila;
   elemento: tipo_elemento;
begin
   writeln;
   menu;
   writeln;
   write ('Scegliere l''operazione da compiere: ');
   readln (opzione);
   while not (opzione = 'x') do
      begin
         case opzione of
       'a': crea(pila);
       'b': begin
               write('elemento? ');
          readln(elemento);
          push(elemento,pila);
            end;
       'c': pop(elemento,pila);
            'd':  writeln('piena? ',piena(pila));
       'e': writeln('vuota? ',vuota(pila));
       'f':  visualizza_stato(pila);
    end;
    readln;
    menu;
    writeln;
    write ('Scegliere l''operazione da compiere: ');
    readln (opzione);
      end
end.