Задачей оператора ifthen (если ... тогда) является выполнение действия по условию, причем условие должно быть булевого типа: Да/Нет. Синтаксис условного оператора следующий:
if <булево условие> then <оператор>;
Например, при выполнении условия X>5 переменной Y присваивается значение Y+1.
if X>5 then Y := Y+1;
Условный оператор if.. then допускает включение в свою конструкцию ключевого слова else (иначе):
if <булево условие> then <оператор1> else <оператор2>;
Например:
if X>5 then Y := Y+1 else Y := Y-1;
Оператор-селектор case of
Конструкция оператора-селектора case..of следующая:
case <селектор> of
<константа1> : <оператор1>;
<константа2> : <оператор2>;
<константа3> : <оператор3>; else <оператор>; end;
©Задачи секции else внутри селектора case аналогичны задачам else в операторе if then else. Если селектору не соответствует ни одна из констант, будет выполнен оператор, следующий за словом else. Если же в конструкции отсутствует ключевое слово else, будет выполнена следующая за оператором строка кода.
В роли селектора могут выступать переменная, выражение или функция, но они обязательно должны быть порядкового типа. Недопустимы селекторы строкового и действительного типов. Оператор case осуществляет проверку на равенство значений селектора и констант оператора. Если значение селектора совпадает со значением константы, выполняется соответствующий константе оператор.
case MyValue of
1 : X := 1;
2 : X := Y+3;
else X := 0;
end;
Оператор case обладает большей наглядностью, чем группа операторов if..then. Но это не единственное из его достоинств. Еще одним преимуществом селектора case..of считается возможность группировки констант.
var Ch:Char;
case ch of
'A' .. 'D' : <оператор1>;
'E' : <оператор2>;
else <оператор3>; end;
ОПри использовании селектора case следите за тем, чтобы диапазоны значений констант не пересекались!
case value of
3 : Y:=value-3;
1..10 : Y:= value+1; //ошибка!!! значение 3 входит в диапазон 1..3 end;
Операторы обработки циклов
Циклы предназначены для многократного выполнения оператора (группы операторов), заключенного внутри циклической конструкции. Delphi предлагает три различных типа циклов: for.. do, repeat..until и while.. do.