Необхідно звернути увагу, що перед else (після end) крапка з комою не ставиться.
Виконується оператор if в такий спосіб:
1.Обчислюється значення умови (умова - вираз логічного типу, значення якого може дорівнювати True або False).
2.Якщо умова істинна (значення виразу умови дорівнює True), то виконуються оператори, що слідують за словом then (між begin і end). На цьому виконання операції if закінчується, тобто оператори, що слідують за else, не будуть виконані.
3.Якщо умова хибна (значення виразу умови дорівнює False), то виконуються оператори, що слідують за словом else (між begin і end).
Якщо в операторі if між begin і end перебуває тільки один оператор, то слова begin і end можна не писати.
Якщо яка-небудь дія повинна бути виконана тільки при виконанні певної умови і пропущено дії, якщо ця умова не виконується, то оператор if може бути записана так:
if <умова> then
begin
{ оператори, які треба виконати, якщо умова виконується, істинно }
end;
На мал 2. представлений алгоритм, що відповідає оператору if-then .
Наприклад, оператор if n=m then c:=c+l; збільшує значення змінної с тільки в тому випадку, якщо значення змінних n і m рівні.
Оператор вибору case організує розгалуження залежно від значення деякої змінної типу, що перераховується.
Наприклад, якщо In: integer, те після виконання
case in of
0: u:=x+y;
1: u:= x-y;
2: u:=x y;
else u=0;
end;
У відповідності зі значенням in обчислюється u. Якщо in=0, то u=x+y, якщо in=1, то u= x-y, якщо in=2, то u=x*y і, нарешті, u=0 при будь-яких значеннях in відмінних від 0, 1 або 2.