Колонтитул — справочная строка над текстом страницы (иногда сбоку от него и редко под ним), определяющая содержание страницы: какое произведение какого автора на ней напечатано в сборнике; какой параграф какой главы — в моноиздании; какая статья или какие статьи — в словаре; о каком событии, предмете, лице ведется речь — в мемуарах. : колонтитул, отражающий содержание текста страницы, позволяет читателю быстро находить фрагмент на конкретную частную тему, не просматривая текст и не вчитываясь в него. к сожалению, колонтитулы применяются не часто. объясняется это тем, что при верхнем колонтитуле уменьшается площадь полосы под текст по крайней мере на две строки. это часто и останавливает издателя. чтобы избежать потерь площади, можно использовать нижний колонтитул. он входит в строку с колонцифрой (номером страницы), а она ставится за пределами полосы, которая при этом не уменьшается. можно помещать колонтитул только на одной стороне разворота, что уменьшит потери вдвое. есть и другие способы уменьшить потери площади, каждый издатель сам должен подумать какой из них выбрать. нецелесообразно использовать в книге постоянный (мертвый) колонтитул, так как он не несет никакой функциональной нагрузки: каждый помнит, какую книгу он читает и кому она принадлежит. потеря бумаги из-за постоянных колонтитулов ничем не оправдана. кроме постоянных (бесполезных) колонтитулов существуют переменные, которые различаются: — по объекту на странице, который служит основой для формулирования колонтитула: 1) рубрикаиионный — в основе лежит заголовок подраздела, текст которого расположен на странице; 2) текстовой — в основе лежит содержание текста страницы, когда он не расчленен заголовками или расчленен заголовками нумерационными, немыми, графическими, т. е. не определяющими тему подразделов; — по принципу смены одного колонтитула другим: 1) прерывистый — меняется только с началом нового подраздела; 2) скользящий — меняется с каждой новой страницей или даже колонкой. среди прерывистых рубрикационных различаются: 1) колонтитулы одноступенные, когда в колонтитул вынесены заголовки только одной ступени, т. е. одной значимости (только глав или только параграфов); 2) двух- и трехступенные — колонтитулы левой страницы разворота одной ступени, а правой — другой, подчиненной; например, слева заголовки глав, справа — параграфов и подпараграфов. виды колонтитулов по их внешним особенностям: по месту на развороте — левый (на левой полосе разворота) и правый (на правой стороне разворота); по месту на полосе — верхний (над текстом), боковой (на боковом наружном поле), нижний (в строке с нижней колонцифрой), оборонный (врезан в текст полосы сверху или снизу). выбор колонтитула зависит от особенностей произведения и книги и самого колонтитула. от колонтитулов требуется, чтобы они: 1.кратко, но четко выражали содержание подраздела, к которому относится страница или содержание самой страницы. 2. менялись справа не чаще чем через 2—3 страницы и не реже, чем через 8—10 страниц. 3. включали в себя не только тематическую часть заголовков, но и родонумерационную, поскольку ссылки в книге чаще всего делаются только на род и номер рубрики.
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.
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