| Ваш IP: 54.156.69.204 | Online(38) - гости: 21, боты: 17 | Загрузка сервера: 4.82 ::::::::::::

Цикл while

Цикл while позволяет повторять выполнение некоторых действий (инструкций) определенное количество раз.

Каждый цикл состоит из двух основных частей:

  • логическое выражение
  • инструкция

Логическое выражение определяет когда должно быть остановлено исполнение цикла. Инструкцией является фрагмент программного кода, выполняющий необходимые действия. Инструкция может быть одна или несколько и будет исполняться до тех пор, пока пока логическое выражение цикла возвращает значение TRUE и завершается когда логическое выражение не вернет значение FALSE (прекращение цикла).

Синтаксис цикла с предусловием:

while (логическое_выражение) 
инструкция;

Примеры использования:

$i = 1;
while ($i <= 10) {
echo $i;
$i++;
}

Цикл будет исполняться 10 раз, так как кол-во циклов задается переменной $i, значение которой при каждом цикле увеличивается на единицу ($i++) при условии завершения цикла $i <= 10.

12345678910

Вывод нечетных чисел:

$i = 1;
while ($i <= 10) {
echo $i;
$i+=2;
}

13579

Бывают ситуации, когда цикл должен прерваться. Для этого у нас есть возможность управлять ими  при помощи оператора break.

Пример:

$i = 5;
while($i < 1000){
echo $i;
$i++;
if($i == 10) {
break;
}
}

56789

Оператор break выбрасывает нас из цикла при возникновении  условия $n == 10, при этом счет начинается с 5 ($i = 5).

Оператор continue (продолжить), перебрасывает нас обратно к условию. Этот пример, выведет все числа кроме числа 10.

$i = 0;
while($i < 30){
$i++;
if($i == 10) continue;
echo $i;
}

1234567891112131415161718192021222324252627282930

Так же возможно применение цикла в цикле, например для построения таблицы умножения:

echo "<table border='1'>";
$i = 2;
$x = 1;
$n = 1;
while ($n <= 8) {
$x++;
$n++;
echo "<td>";
while ($i <= 9) {
echo $x." * ".$i." = ".$i * $x."<br>";
$i++;
}
$i=2;
echo "</td>";
}
echo "</table>";

37678532687342687

Цикл do while аналогичен циклу while, с тем отличием, что логическое выражения проверяется в конце, а не в начале.

Таким образом, тело цикла выполняется хотя бы один раз. Синтаксис цикла с постусловием следующий:

do
{
тело_цикла;
}
while (логическое_выражение);

Данная разновидность цикла полезна, когда тело цикла должно быть исполнено хотя бы один раз, независимо от значения логического выражения.

Пример:

$i = 1;
do {
echo $i;
$i++;
} 
while ($i <= 10);

12345678910

Добавить комментарий

Случайные статьи

  • Маркировка SMD-резисторов

    «Резисторы» нулевого сопротивления (перемычки на плате) кодируются одной цифрой «0». Большее количество знаков обозначает: Кодирование 3 или 4 цифрами ABC обозначает AB•10C Ом например 102 — это 10•10² Ом = 1 кОм ABCD обозначает ABC•10D Ом, точность 1 % (ряд E96) например 1002 — это 100•10² Ом = 10 кОм Кодирование цифра-цифра-буква (JIS-C-5201) …Подробнее...
  • Сигнализатор появления влаги

    Датчик наличия влаги поможет избежать многих проблем при появлении протечек в системах водоснабжения. Главное его достоинство это простота и автономность, в дежурном режиме датчик потребляет всего 1 мкА, а в режиме сигнализации 80 мА. На транзисторах VT1 VT2, резисторах R1 R2, конденсаторе С1 и головке громкоговорителя собран тональный генератор. Питание …Подробнее...
  • Источник питания для приборов на ОУ

    Источник питания для приборов на ОУ

    Для питания приборов на ОУ требуется напряжение +/-10…15В, при токе потребления не более 10-20мА(2-3 ОУ), именно для таких уст-в разработан данный ИБП. Сетевое напряжение гасится до уровня 50В, при помощи параметрического стабилизатора — С1 VD1 C2 VD2. Этим напряжением питается 2-х тактный импульсный генератор на VT1 VT2 собранный по схеме …Подробнее...
  • К1156ЕУ1 — УНИВЕРСАЛЬНЫЙ ИМПУЛЬСНЫЙ СТАБИЛИЗАТОР НАПРЯЖЕНИЯ

    К1156ЕУ1 — УНИВЕРСАЛЬНЫЙ ИМПУЛЬСНЫЙ СТАБИЛИЗАТОР НАПРЯЖЕНИЯ

    Микросхема 1156ЕУ1 представляет из себя набор функциональных элементов предназначенный для построения импульсного стабилизатора повышающего, понижающего или инверсного типа. Прибор К1156ЕУ1Т выпускается в металлокерамическом корпусе типа 4112.16-3, а КР1156ЕУ1 – в пластмассовом корпусе типа 283.16-2. ОСОБЕННОСТИ • Рассчитан для понижающих, повышающих и инвертирующих импульсных стабилизаторов • Регулировка выходного напряжения 1,25…40В • Выходной импульсный ток………..<1,5А …Подробнее...
  • Расчет емкости балластного конденсатора для бестрансформаторного блока питания

    Расчет емкости балластного конденсатора для бестрансформаторного блока питания

    Бестрансформаторные источники питания с гасящим конденсатором удобны своей простотой, имеют малые габариты и массу, но не всегда применимы из-за гальванической связи выходной цепи с сетью 220 В. В бестрансформаторном источнике питания к сети переменного напряжения подключены последовательно соединенные конденсатор и нагрузка. Неполярный конденсатор, включенный в цепь переменного тока, ведет себя как …Подробнее...