program ff;
uses crt;
var
A: array [1 .. 100, 1 .. 100] of integer; { переменная массива }
i, j, m, n: integer; { переменные для циклов }
B: array [1 .. 100] of integer; { переменная массива }
{ функция, определяющая есть ли в столбце цифры с одинаковыми цифрами }
function estivstolbce(j: integer): boolean;
var
i, k: integer;
s: string;
B: boolean;
begin
for i := 1 to m do
begin
B := true;
str(A[i, j], s);
for k := 2 to length(s) do
if s[1] <> s[k] then
B := false;
if B then
begin
estivstolbce := B;
exit;
end;
end;
estivstolbce := B;
end;
{ ---конец функции }
{ -------------------------------------------- }
begin
write('M= ');
readln(m); { считываем размер массива }
write('N= ');
readln(n); { считываем размер массива }
writeln('Vvedite elementy massiva A (>10): ');
for i := 1 to m do
for j := 1 to n do
begin
write('A[', i, ',', j, ']=');
readln(A[i, j]);
end; { считываем сам массив }
clrscr;
write('Vot vvedennyy vami massiv A: ');
for i := 1 to m do
begin
writeln;
for j := 1 to n do
write(A[i, j]:4, ' ');
end; { выводим массив }
i := 0;
for j := 1 to n do
if estivstolbce(j) then
begin
inc(i);
B[i] := j;
end; { записываем в массив номера столбцов }
writeln;
writeln;
write('Massiv B: ');
for j := 1 to i do
write(B[j], ' ');
{ выводим массив В, в котором номера столбцов где есть элементы с одинаковыми цифрами }
readln;
end.