O оператор доступа with.

Составной оператор представляет собой группу из произвольного числа лю­бых последовательно выполняемых операторов, отделенных друг от друга точкой с запятой, и ограничен­ную операторными скобкамиbeginи end. Формат составного оператора:

begin

<оператор_1>;

<оператор_2>;

. . .

<оператор_ n >;

end ;

Независимо от числа входящих в него операторов, составной оператор вос­принимается как единое целое и может располагаться в любом месте про­граммы, где допускается наличие оператора. Наиболее часто составной опе­ратор используется в условных операторах и операторах цикла.

Составные операторы могут вкладываться друг в друга, при этом на глубину вложенности составных операторов ограничений не накладывается.

Условный оператор обеспечивает выполнение или невыполнение некоторых операторов в зависимости от соблюдения определенных условий. Условный оператор в общем случае предназначен для организации разветвления про­граммы. Формат условного оператора:

if<условие> then<оператор_1> [ else<оператор_2>];

Условие представляет собой выражение логического типа. Оператор работа­ет следующим образом: если условие истинно (имеет значениеtrue), то вы­полняется оператор_1, в противном случае выполняется оператор_2. Оба опе­ратора могут быть составными.

Условный оператор может быть записан в сокращенной форме, когда слово else и оператор после него отсутствуют.

Для организации разветвлений на три направления и более можно исполь­зовать несколько условных операторов, вложенных друг в друга. При этом каждое else соответствует тому then, которое непосредственно ему предше­ствует. Из-за возможных ошибок следует избегать большой вложенности условных операторов друг в друга.

Оператор выбора является обобщением условного оператора и позволяет сделать выбор из произвольного числа имеющихся вариантов, то есть орга­низовать разветвления на произвольное число направлений. Этот оператор состоит из выражения, называемого селектором, списка вариантов и необя­зательной ветви else, имеющей тот же смысл, что и в условном операторе. Формат оператора выбора:

case<Выражение-селектор> of

<Список_1>: <0ператор_1>;

. . .

<Список­_ N >: <Оператор_ N >

else <Оператор>;

end ;

Выражение-селектор должно быть порядкового типа. Каждый вариант представляет собой список констант, отделенных двоеточием от относящегося к данному варианту оператора, возможно, составного. Список констант выбора стоит из произвольного количества значений и диапазонов, отделенных друг от друга запятыми. Границы диапазона записываются двумя константами через разделитель «..». Тип констант должен соответствовать типу выражения-селектора.

Оператор выбора выполняется следующим образом:

1. вычисляется значение выражения селектора;

2. производится последовательный просмотр вариантов на предмет совпадения значения селектора с константами и значениями из диапазонов соответствующего списка;

3. если для очередного варианта этот поиск успешный, то выполняется оператор этого варианта. После этого выполнение оператора выбора заканчивается;

4. если все проверки оказались безуспешными, то выполняется оператор, стоящий после слова else(при его наличии).

Примеры .

а ) case i of б ) case NumberDay of

1: z:= i+10; 1..5 : strDay:=’Work’;

2: z:= i+100; 6, 7 : strDay:=’Rest’

3: z:= i+100; else strDay:=’ ‘;

end ; end ;

Операторы цикла используются для организации циклов (повторов). Цикл представляет собой последовательность операторов, которая может выполняться более одного раза. Группу повторяемых операторов называют телом цикла. Всего имеется три вида операторов цикла:

o с параметром;

o с предусловием;

o с постусловием.

Обычно, если количество повторов известно заранее, то применяется оператор цикла с параметром, в противном случае – оператор с пост- или предусловием. Выполнение оператора цикла любого вида может быть прервано с помощи оператора перехода gotoили предназначенной для этих целей процедуры Break, которая передает управление на оператор, следующий за оператором цикла. С помощью процедуры Continueможно задать досрочно t завершение очередного повторения тела цикла, что равносильно передач t управления в конец тела цикла.

Операторы циклов могут быть вложенными друг в друга.