// Prof. carlos Maziero, DINF-UFPR, Abril de 2016

program ordena ;

const
  SIZE = 1000 ;

type
  vetor = array [1..SIZE] of integer ;

//-------------------------------------------------------------------
// Leitura de um vetor V com N posições

procedure le_vetor (var v: vetor; var n: integer) ;
var
  i : integer ;

begin
  repeat
    write ('Tamanho do vetor: ') ;
    read (n) ;
  until (n > 0) AND (n <= SIZE) ;

  for i := 1 to n do
  begin
    write ('v[', i, ']: ') ;
    read (v[i]) ;
  end ;
end ;

//-------------------------------------------------------------------
// Escrita na tela de um vetor V com N posições

procedure escreve_vetor (v: vetor; n: integer) ;
var
  i : integer ;

begin
  for i := 1 to n do
    write (v[i], ' ') ;
  writeln () ;
end ;

//-------------------------------------------------------------------
// ordena um vetor V com N posições usando o método da seleção

/// ... (completar)

//-------------------------------------------------------------------
// Programa principal: lê, ordena e escreve um vetor Vet com Num posições

var
  vet : vetor ;
  num : integer ;

begin
  le_vetor      (vet, num) ;
  escreve_vetor (vet, num) ;
  ordena_vetor  (vet, num) ;
  escreve_vetor (vet, num) ;
end.

