program ler_e_imprimir_pares_indices; const min = 1; max = 200; type vetor = array [min..max] of longint; var v : vetor; n : longint; procedure imprimir (var v : vetor; tam : longint); var i : longint; begin for i:= 1 to tam do write (v[i], ' '); writeln; end; procedure ler (var v : vetor; var tam: longint); (* leitura *) var i : longint; begin writeln ('Qual o tamanho do vetor? '); read (tam); (* 1 <= tam <= 200, define o tamanho util do vetor *) for i := 1 to tam do read (v[i]); end; procedure selecao (var v: vetor; n: longint); var i, j, pos_menor: longint; aux : longint; begin for i := 1 to n-1 do begin (* acha a posicao do menor a partir de i *) pos_menor := i; (* inicia a partir de i+1*) for j := i+1 to n do if v[j] < v [pos_menor] then pos_menor := j; (* troca os elementos*) aux := v [pos_menor]; v[pos_menor] := v[i]; v[i] := aux; end; end; begin (* programa principal *) ler (v, n); imprimir (v, n); selecao (v, n); imprimir (v, n); end.