Const m=4; n=15; var i,j,j0: integer; a:array[1..m,1..n] of integer; jExit,iExit:Boolean; begin Randomize; for i:=1 to m do begin writeln; for j:=1 to n do begin a[i,j]:=random(2); write(a[i,j]:2) end end; writeln; j:=0; jExit:=false; repeat j:=j+1; i:=1; iExit:=false; if a[i,j]=0 then begin repeat i:=i+1; if a[i,j]<>0 then iExit:=true until iExit or (i=m); if i=m then jExit:=true end until jExit or (j=n); if a[i,j]=0 then writeln('Нулевой столбец ',j) else writeln('Нет нулевых столбцов'); end.
В масках файла (обозначение для группы файлов) используют два символа:
1) ? (вопросительный знак) - на его месте в имени файла должен быть ровно один произвольный символ
2) * (звёздочка) - на её месте в имени файла может быть последовательность любых допустимых символов произвольной длины, в том числе и пустая последовательность (нет символов)
?fil?*.w → 1 любой символ + fil + 1 любой символ + любая последовательность + .w
1) files.w - не удовлетворяет маске (нет символа перед fil)
2) аfile.w - удовлетворяет маске (1 любой символ (a) + fil + 1 любой символ (e) + любая последовательность (пустая) + .w)
3) 2files.w - удовлетворяет маске (1 любой символ (2) + fil + 1 любой символ (e) + любая последовательность (s) + .w)
4) 1filled.w - удовлетворяет маске (1 любой символ (1) + fil + 1 любой символ (l) + любая последовательность (ed) + .w)
var
i,j,j0: integer;
a:array[1..m,1..n] of integer;
jExit,iExit:Boolean;
begin
Randomize;
for i:=1 to m do begin
writeln;
for j:=1 to n do begin
a[i,j]:=random(2);
write(a[i,j]:2)
end
end;
writeln;
j:=0; jExit:=false;
repeat
j:=j+1; i:=1; iExit:=false;
if a[i,j]=0 then begin
repeat
i:=i+1;
if a[i,j]<>0 then iExit:=true
until iExit or (i=m);
if i=m then jExit:=true
end
until jExit or (j=n);
if a[i,j]=0 then writeln('Нулевой столбец ',j)
else writeln('Нет нулевых столбцов');
end.
Тестовый пример:
0 1 1 1 1 0 1 0 1 0 0 0 0 0 1
0 0 1 0 1 0 0 0 1 1 0 0 0 0 0
1 1 0 0 0 1 0 1 1 1 1 1 0 1 1
1 1 1 0 1 0 1 0 0 1 0 1 0 1 0
Нулевой столбец 13
1) files.w
Объяснение:
В масках файла (обозначение для группы файлов) используют два символа:
1) ? (вопросительный знак) - на его месте в имени файла должен быть ровно один произвольный символ
2) * (звёздочка) - на её месте в имени файла может быть последовательность любых допустимых символов произвольной длины, в том числе и пустая последовательность (нет символов)
?fil?*.w → 1 любой символ + fil + 1 любой символ + любая последовательность + .w
1) files.w - не удовлетворяет маске (нет символа перед fil)
2) аfile.w - удовлетворяет маске (1 любой символ (a) + fil + 1 любой символ (e) + любая последовательность (пустая) + .w)
3) 2files.w - удовлетворяет маске (1 любой символ (2) + fil + 1 любой символ (e) + любая последовательность (s) + .w)
4) 1filled.w - удовлетворяет маске (1 любой символ (1) + fil + 1 любой символ (l) + любая последовательность (ed) + .w)