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 управления в конец тела цикла.
Операторы циклов могут быть вложенными друг в друга.