PHP PHP  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Условия и циклы

Тест проверяет, умеете ли вы проследить выполнение программы до конца, а не просто узнать знакомую конструкцию. Встречаются вложенные условия, match, преждевременный выход, continue и циклы, которые ломаются на граничном значении.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. Сначала выпишите порядок проверок и изменения переменных. Таймер рассчитан на 55 минут.
Вопрос 1 из 20
Какая ветвь условия сработает для возраста 18 лет?
PHP
$age = 18;
if ($age >= 18) echo 'adult';
elseif ($age >= 13) echo 'teen';
else echo 'child';
Вопрос 2 из 20
Что произойдёт при выполнении match?
PHP
$value = '1';
echo match ($value) {
    1 => 'int',
    2 => 'two',
};
Вопрос 3 из 20
В каком случае match предпочтительнее длинной цепочки сравнений одного значения?
Вопрос 4 из 20
Почему ветвь "zero" не выполняется?
PHP
$input = '0';
if (!$input) echo 'empty';
elseif ($input === '0') echo 'zero';
Вопрос 5 из 20
Диапазоны скидок заданы как 0–99, 100–499 и от 500. Как лучше построить условия?
Вопрос 6 из 20
Сколько раз выполнится тело цикла?
PHP
for ($i = 0; $i < 3; $i++) {
    echo $i;
}
Вопрос 7 из 20
Что выведет код для пустого массива?
PHP
$items = [];
foreach ($items as $item) {
    echo $item;
}
Вопрос 8 из 20
Какое отличие do-while важно при проверке пользовательского ввода?
Вопрос 9 из 20
Какой результат будет в $sum?
PHP
$sum = 0;
foreach ([2, 3, 4] as $n) {
    $sum += $n;
}
echo $sum;
Вопрос 10 из 20
При обходе большого набора строк нужно прекратить чтение, как только найдено нужное значение. Какой вариант разумнее?
Вопрос 11 из 20
Какая последовательность цифр останется в выводе после continue на третьей итерации?
PHP
for ($i = 1; $i <= 4; $i++) {
    if ($i === 3) continue;
    echo $i;
}
Вопрос 12 из 20
Что означает break 2 во вложенных циклах?
Вопрос 13 из 20
Какой текст выведет код?
PHP
foreach (['A','B'] as $letter) {
    foreach ([1,2,3] as $n) {
        echo $letter, $n;
        if ($n === 2 || $letter === 'B') break;
    }
}
Вопрос 14 из 20
Во вложенном обходе нужно пропустить остаток текущей строки матрицы и перейти к следующей строке. Какая конструкция делает это непосредственно?
Вопрос 15 из 20
Почему безусловный continue в конце тела while может скрыть бесконечный цикл?
Вопрос 16 из 20
Как исправить ошибку на единицу, чтобы вывести все три элемента ровно по одному разу?
PHP
$a = ['x','y','z'];
for ($i = 0; $i <= count($a); $i++) {
    echo $a[$i];
}
Вопрос 17 из 20
Цикл ищет первый положительный элемент. Какой вход обязательно нужно проверить отдельным тестом?
Вопрос 18 из 20
Почему этот цикл бесконечен?
PHP
$n = 3;
while ($n > 0) {
    echo $n;
}
Вопрос 19 из 20
Что особенно рискованно при добавлении элементов в массив, который одновременно обходится foreach?
Вопрос 20 из 20
Счётчик должен обработать значения от 1 до 10 включительно. Какое условие соответствует требованию?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу