Структурні оператори
Структурні оператори містять інші оператори та керують послідовністю їхнього виконання.
В OP структурними операторами є:
складений оператор;
умовні оператори:
оператор альтернативи іf,
оператор поліваріантного вибору case;
оператори циклу:
оператор циклу з передумовою (while);
оператор циклу з постумовою (repeat until);
оператор циклу з лічильником (For);
оператор приєднання (with).
Складеним оператором є група операторів, розташована між ключовими словами begin і end, які називаються операторними дужками.
Оператори, що знаходяться у складеному, виконуються у порядку їхнього розташування.
Тіло кожної програми являє собою один складений оператор.
Складений оператор використовують у тих випадках, коли синтаксис мови ОР допускає в певній точці програми використання тільки одного оператора, а за алгоритмом в цьому місці треба виконати групу операторів.
Умовні оператори
В ОP включені два умовних оператори – If і Case, кожний з яких може бути записаний у двох формах: повної й неповної.
Дано два значення x і y (xy). Необхідно порівняти ці значення й надрукувати ім'я більшої змінної.
Для розв'язання цього завдання досить порівняти обидва значення й залежно від результату порівняння вивести на друк символу «х» або «y».
Третім кроком алгоритму була структура прийняття рішення – якщо х >y, то надрукувати «x», інакше надрукувати «y».
У мові ОР цю структуру можна записати за допомогою оператора if.
Оператор альтернативи
Оператор if призначений для реалізації алгоритмічної конструкції розгалуження.
Розглянемо приклад який розв’язує вище наведену задачу.
program Ex_3;
var x, y : real;
begin
writeln('Enter x, y');
readln(x, y);
If x>y then writeln(‘X’)
else writeln(‘Y’)
end.
Повна форма оператора if має вигляд:
if Умова then Оператор1
else Оператор2;
де if, then, else – зарезервовані слова;
Умова – довільний логічний вираз;
Оператор1, Оператор2 – довільні оператори.
Блок-схема оператору представлена на рис. .
Дія оператору.
Спочатку обчислюється Умова. Якщо цей вираз є істинним (True), то виконується Оператор1, що стоїть після ключового слова then і керування передається наступному за умовним оператору (Оператор2 пропускається). Якщо вираз Умова є хибним (False), то Оператор1 пропускається, виконується лише Оператор2, що стоїть після ключового слова else і керування передається наступному за умовним оператору.
Якщо будь-яка дія має виконуватися лише при виконанні певної умови і пропущена у разі невиконання цієї умови, то оператор if має бути записаний в скороченій формі.
Скорочена форма оператора if має вигляд:
If умова then Оператор;
Б лок-схема представлена на рисунку .
Дія оператора.
Спочатку обчислюється Умова. Якщо цей вираз є істинним (True), то виконується Оператор, що стоїть після ключового слова then і керування передається наступному за умовним оператору. Якщо вираз Умова є хибним (False), то Оператор пропускається керування відразу ж передається на наступний за умовним оператор.
В Pascal оператори розділяються символом ";".
Це означає, що усередині будь-якого структурного оператора символ ";" зустрічатися не повинен, інакше все, що стоїть після нього, буде вважатися вже іншим оператором.
Приклад з помилкою:
if A > В then С := А ; помилка
else С := В;
У показаному вище прикладі крапка з комою, що стоїть перед ключовим словом else закінчує текст оператора if. А це приводить до синтаксичної помилки, оскільки оператора, що починається із ключового слова else в Pascal немає.
Щоб не допускати таких помилок, доцільно запам'ятати таке правило: