{Terreno Antonio}
uses
   vettori,crt;

procedure menu;

begin
   clrscr;
   writeln ('MENU'' OPERAZIONI:');
   writeln ('[ a ] --> leggi vettore da tastiera');
   writeln ('[ b ] --> visualizza stato');
   writeln ('[ c ] --> applica insertion sort');
   writeln ('[ d ] --> applica selection sort');
   writeln ('[ e ] --> elimina ripetizioni');
   writeln ('[ f ] --> inserisci in ordine ');
   writeln ('[ g ] --> fondi due array');
   writeln ('[ x ] --> Uscita');
end;

var
   opzione: char;
   vettore_1,vettore_2,vettore_3: tipo_array;
   dim_1, dim_2,dim_3: integer;
   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': leggi_array(vettore_1,dim_1);
       'b': stampa_array(vettore_1,dim_1);
       'c': insertion_sort(vettore_1,dim_1);
       'd': selection_sort(vettore_1,dim_1);
            'e': elimina_ripetizioni(vettore_1,dim_1);
       'f': begin
               write('elemento? ');
          read(elemento);
          inserisci_ordinato(elemento,vettore_1,dim_1);
          readln;
            end;
       'g': begin
               write('ricorda che la somma delle dimensioni ');
          writeln('dei due array deve essere < ',max);
          leggi_array(vettore_1,dim_1);
          readln;
          leggi_array(vettore_2,dim_2);
          readln;
          fondi_array(vettore_1,vettore_2,vettore_3,
          dim_1,dim_2,dim_3);
          stampa_array(vettore_3,dim_3);
          repeat until keypressed;
          end;
       end;
       readln;
       menu;
       writeln;
       write ('Scegliere l''operazione da compiere: ');
       readln (opzione);
      end
end.