Código:
program vectores;
USES crt;
CONST
Max = 20;
max_filas=40;
TYPE
vector = ARRAY[1..max] of INTEGER;
function par(numero:integer):integer;
begin
randomize;
if numero mod 2 <>0 then
while numero mod 2<>0 do
begin
numero:=random(max_filas)+1;
end;
par:=numero;
end;
function comprobar(posicion,numero:integer;vector_comprobar:vector):integer;
var contador:integer;
begin
randomize;
FOR contador:= 1 TO posicion-1 DO
begin
if (vector_comprobar[contador]=numero) then
numero:=par(numero);
numero:= comprobar(contador,numero,vector_comprobar)
end;
comprobar:=numero;
end;
VAR
v:vector;
i,j,inicializar, num:integer;
BEGIN
randomize;
ClrScr;
i:=1;
while i<=Max DO
BEGIN
num:=random(max_filas)+1;
inicializar:=comprobar(i,num,v);
v[i]:=inicializar;
i:=i+1;
end;
(* visualizo resultado*)
FOR j:= 1 TO i-1 DO
writeln(' el número par es ', v[j],' posicion: ',j);
readln
END.


