Лабораторная работа № 2. Управляющие конструкции
Условный оператор IF имеет два формата.
if (условие)
{ блок операторов 1 }
[else { блок операторов 2 } ];
Если условие истинно, то выполнится блок операторов 1, а если условие ложно ‑ блок операторов 2.
if (условие) { блок операторов }
[ elseif (условие) { блок операторов } ]
...
[ elseif (условие) { блок операторов } ]
[ else { блок операторов } ]
Очередное условие elself вычисляется лишь в том случае, если все предшествующие условия if и elself оказались ложными.
Замечание. Допускаются вложенные команды if.
Тернарный оператор ? работает почти также как и оператор IF:
Переменная = (условие) ? (Выражение-2) : (Выражение-З)
Тернарный оператор "?:" ‑ это вид условного оператора, он проверяет заданное условие и если оно верно, то присваивает переменной значение Выражения-2, иначе – Выражения-3.
Оператор SWITCH имеет вид:
switch (выражение) {
case (значение): { блок операторов }
[case (значение): { блок операторов } ]
...
[default: { блок операторов } ]
}
Значение выражения в операторе switch последовательно сравнивается с условиями в секциях case.
Когда секция case, равная значению выражения, найдена, выполняются все операторы после нее и до ближайшего оператора break (данный оператор может отсутствовать в конструкции) или до конца оператора switch. Оператор break передает управление оператору, следующему за закрывающей скобкой оператора switch.
Если не одно из значений case не совпадает с выражением в скобках, то выполняются операторы, стоящие после ключевого слова default (данное значение может отсутствовать в конструкции, и тогда управление будет передаваться на команды, следующие за конструкцией switch).
Оператор цикла с предусловием WHILE выглядит так:
while (выражение-условие)
{ операторы тела цикла }
При входе в цикл вычисляется выражение-условие, и, если его значение истинно или отлично от нуля, выполняется тело цикла. Затем вычисления выражения-условия и операторов тела цикла выполняется до тех пор, пока значение выражения-условия не станет ложным или равным нулю.
Оператор цикла с постусловием DО WHILE работает почти так же, как и цикл while, однако условие проверяется не в начале, а в конце каждой итерации.
do
{ операторы тела цикла }
while (условие);
При входе в цикл в любом случае выполняется тело цикла (т.е. цикл всегда будет выполнен хотя бы один раз), затем вычисляется условие, и если оно истинно, вновь выполняется тело цикла.
Оператор цикла FOR имеет вид:
for (инициализация; условие; приращение)
{ операторы тела цикла }
Инициализация – операторы через запятые, которые выполняются всего один раз перед выполнением цикла (обычно они определяют начальные значения управляющей переменной цикла и других переменных).
Условие проверяется в начале каждой итерации и определяет, должна ли выполняться текущая итерация (если условие истинно) или нет.
Приращение - операторы через запятые, которые выполняются в конце каждой итерации цикла (обычно определяется изменение управляющей переменной при каждой итерации).
Пример:
for ($i = 10; $i <= 100; $i +=10) // обратная косая черта специальный
echo ("\$i = ". $i . "<br>"); // символ “$” делает обычным
В этом примере управляющая переменная $i инициализируется значением 10. Цикл продолжается до тех пор, пока $i не достигнет или не превысит пороговую величину 100. При каждой итерации значение $i увеличивается на 10. В результате команда echo выполняется 10 раз, каждый раз выводя текущее значение $i. В управляющих выражениях циклов for могут отсутствовать любые компоненты.
Оператор break немедленно прерывает выполнение операторов циклов и switch.
Оператор continue предназначен для пропуска всех оставшихся команд текущей итерации цикла и немедленного начала новой итерации.