uses crt;
const N=3;M=4;
type
ta=array [1..N,1..M] of integer;
ta2=array [1..N,1..M] of integer;
procedure vvod (Var a:ta;Var b:ta2);
var
k,j:integer;
begin
for k:= 1 to N do begin
for j:= 1 to M do begin
a[k,j]:=random(20);
b[k,j]:=a[k,j];
write(a[k,j]:3);
end;
writeln;
end;
end;
end;
var
a:ta;b:ta2;z,s,d,h,k,j:integer;
begin
clrscr;
writeln;
vvod (a,b);
s:=0;
for d:= 1 to n do
begin
for h:= 1 to m do
begin
z:=b[d,h];
for k:= 1 to N do
begin
For j:= 1 to M do
begin
if (a[k,j] = z) then inc(s);
end;
end;
if s>=2 then writeln ('znach ', z,' sovpadenii ',s-1);
s:=0;
end;
end;
end.
может и можно упростить, не пробовал