
- •Выражения
- •Операции отношения
- •Работа со строковыми величинами
- •Логические операции
- •Операторы. Оператор присваивания
- •Условные операторы: if, case. Составной оператор. Оператор перехода goto
- •Оператор if может иметь сокращенную форму. Её синтаксис:
- •Оператор case
- •Оператор goto (пишется слитно)
- •Задания по этой теме.
- •Операторы цикла. Массивы.
- •Операторы цикла
- •Оператор while
- •Оператор repeat
- •Оператор for
Условные операторы: if, case. Составной оператор. Оператор перехода goto
Операторы: |
||
Условный оператор IF |
IF - сокращенная форма |
Составной оператор |
CASE - оператор выбора из нескольких вариантов |
goto - оператор перехода |
Оператор присваивания |
Оператор цикла: while |
Оператор цикла: repeat |
Оператор цикла: for |
Оператор над записями и объектами: with |
Пустой оператор |
|
Условный оператор IF
Изучив этот оператор мы сможем усовершенствовать нашу 1-ю программу. Напомню, что программа не могла работать при отрицательном значении дискриминанта b2 - 4*a*c.
Синтаксис полного оператора IF:
-------------
if <выражение логического типа>
then <оператор 1> {здесь без ;}
else <оператор 2>;
------------
где <оператор 1> и <оператор 2> - ЛЮБОЙ ОПЕРАТОР
но ТОЛЬКО ОДИН.
Составной оператор
Если Вам нужно поставить вместо
<оператор 1> или <оператор 2> НЕСКОЛЬКО операторов,
используйте СОСТАВНОЙ оператор, т е
begin <оператор>; ... <оператор>; end;
- который формально считается ОДНИМ оператором!
------------
Оператор IF выполняется так:
Вычисляется значение логического выражения. Получаем true или false и ничего другого быть не может.
Если получилось true, то выполняется ОПЕРАТОР 1, затем - операторы, расположенные правее точки с запятой, то есть выполнение оператора заканчивается и выполняются следуюшие операторы. Вообще, операторы программы выполняются по порядку (слева-направо, сверху вниз - по тексту, пока не встретится оператор вроде IF, goto и т п).
Если получилось false, то выполняется ОПЕРАТОР 2 (оператор 1 не выполняется), затем - операторы, расположенные правее точки с запятой.
Оператор if может иметь сокращенную форму. Её синтаксис:
-------------
if <выражение логического типа>
then <оператор 1>;
------------
Такой IF выполняется так:
Вычисляется значение логического выражения. Получаем true или false и ничего другого быть не может.
Если получилось true, то выполняется ОПЕРАТОР 1, затем - операторы, расположенные правее точки с запятой, то есть выполнение оператора заканчивается и выполняются следуюшие операторы.
Если получилось false, то выполняются операторы, расположенные правее точки с запятой. (оператор 1 не выполняется)
Теперь можно сделать программу-2, которая тоже решает квадратное уравнение, но вычисляет корни при любых (вещественных) исходных данных. Программа-2 описана здесь: ( используется оператор IF).
Оператор case
- мощное средство выбора альтернатив.Синтаксис оператора:
case <выражение логического типа> of
<мишень1>:<оператор1>;
<мишень2>:<оператор2>;
<мишень3>:<оператор3>;
<мишень4>:<оператор4>;
. . .
[ else
<операторы> ]
end;
(Квадратные скобки обозначают необязательность)
Состоит из выражения (селектора) и списков операторов, каждому из которых предшествует "мишень" того же типа, что и селектор. Это значит, что в данный момент выполняется тот оператор, "мишень" перед которым соответствует текущему значению селектора. Если совпадения значений не происходит, то не выполняется ни один из операторов, входящих в case или же выполняются операторы, стоящие после необязательного слова else, (если они есть).
"Мишень" состоит из любого количества констант или поддиапазонов, разделенных запятыми, за которым следует двоеточие (:), например:
Поддиапазон записывается в виде двух констант, разделенных двумя точками "..". Тип константы должен соответствовать типу селектора. Оператор (только ОДИН! Иначе используйте СОСТАВНОЙ оператор), стоящий после двоеточия (:), выполняется в том случае, если значение селектора совпадает со значением константы или, если его значение попадает в диапазон значений. Если более одной мишени соответствуют значению селектора, выполняется оператор только первой (по порядку)из них.