Задачка заключается в следующем:
Дано 2 одномерных массива,каждый из которых не содержит повторяющихся элементов.Построить 3-ий массив,содержащий все элементы,входящие хотя бы в один из массивов.В третьем массиве так же не допускаются повторяющиеся элементы.
Я работала над ней,но в итоге-что-то не так-3-ий массив просто зануляет.Как исправить ошибку в коде-не знаю


.
Буду очень признательна тому,кто найдет и справит мне ошибку.
Код:
program LR_4;
{$APPTYPE CONSOLE}
uses
SysUtils;
const n=4;
const m=4;
type Tmas1=array[1..n] of integer;
type Tmas2=array[1..m] of integer;
type Tmas3=array[1..n+m] of integer;
procedure vvod_ma(var a:array of integer);
var i:integer;
begin
writeln('vvedite 1 massiv');
for i:=1 to n do
begin
write('a[',i,']= ');readln(a[i]);
end;
end;
procedure vvod_mb(var b:array of integer);
var i:integer;
begin
writeln('vvedite 2 massiv');
for i:=1 to m do
begin
write('b[',i,']= ');readln(b[i]);
end;
end;
function stroim_c(const a:Tmas1;const b:Tmas2;var c:Tmas3):integer;
var i,j,k,naiden:integer;
begin
for i:=1 to n do
c[i]:=a[i];
k:=n;
for i:=1 to m do
begin
naiden:=0;
for j:=1 to k do
begin
if b[i]=c[j] then
begin
naiden:=1 ;
break;
end;
end;
if naiden=0 then
begin
k:=k+1;
c[k]:=b[i];
end;
end;
result:=k;
end;
procedure print_m(const a:array of integer;const b:array of integer;const c:array of integer);
var i:integer;
begin
writeln('1 massiv');
for i:=1 to n do
writeln(a[i]:4);
writeln;
writeln('2 massiv');
for i:=1 to m do
writeln(b[i]:4);
writeln;
writeln('3 massiv');
for i:=1 to n+m do
writeln(c[i]:4);
writeln;
end;
var a:Tmas1;b:Tmas2;c:Tmas3;
k:integer;
begin
writeln('massiv');
vvod_ma(a);
vvod_mb(b);
print_m(a,b,c);
k:=stroim_c(a,b,c);
writeln('k=',k);
readln;
end.
lmikle: Хде теги???