Примеры решения задач
Задача
Задача. Если переменная $a равна 10, то выведите 'Верно', иначе выведите 'Неверно'.
Решение:
<?php
$a = 10;
if ($a == 10) {
echo 'Верно';
} else {
echo 'Неверно';
}
?>
Задача
Задача. В переменной $min лежит число от 0 до 59. Определите в какую четверть часа попадает это число (в первую, вторую, третью или четвертую).
Решение:
<?php
$min = 10;
if ($min >= 0 and $min <= 14) {
echo 'В первую четверть.';
}
if ($min <= 15 and $min >= 30) {
echo 'Во вторую четверть.';
}
if ($min <= 31 and $min >= 45) {
echo 'В третью четверть.';
}
if ($min >= 46 and $min <= 59) {
echo 'В четвертую четверть.';
}
?>
Задача
Задача. Переменная $lang может принимать два значения: 'ru' и 'en'. Если она имеет значение 'ru', то в переменную $arr запишем массив дней недели на русском языке, а если имеет значение 'en' – то на английском. Решите задачу через 2 if, через switch-case и через многомерный массив без ифов и switch.
Решение:
Решение через 2 if:
<?php
$lang = 'ru';
if ($lang == 'ru') {
$arr = ['пн', 'вт', 'ср', 'чт', 'пт', 'сб', 'вс'];
}
if ($lang == 'en') {
$arr = ['mn', 'ts', 'wd', 'th', 'fr', 'st', 'sn'];
}
var_dump($arr);
?>
Решение через switch-case:
<?php
$lang = 'ru';
switch ($lang) {
case 'ru':
$arr = ['пн', 'вт', 'ср', 'чт', 'пт', 'сб', 'вс'];
break;
case 'en':
$arr = ['mn', 'ts', 'wd', 'th', 'fr', 'st', 'sn'];
break;
}
var_dump($arr);
?>
Решение через многомерный массив:
<?php
$lang = 'ru';
$arr = [
'ru'=>['пн', 'вт', 'ср','чт', 'пт', 'сб', 'вс'],
'en'=>['mn', 'ts', 'wd', 'th', 'fr', 'st', 'sn'],
];
var_dump($arr[$lang]);
?>
Задачи для решения
Работа с if-else
Если переменная $a равна нулю, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a больше нуля, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a меньше нуля, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a больше или равна нулю, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a меньше или равна нулю, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a не равна нулю, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 0, -3.
Если переменная $a равна 'test', то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 'test', 'тест', 3.
Если переменная $a равна '1' и по значению и по типу, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном '1', 1, 3.
Работа с empty и isset
Если переменная $a пустая, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 1, 3, -3, 0, null, true, '', '0'.
Если переменная $a НЕ пустая, то выведите 'Верно', иначе выведите 'Неверно'.
Если переменная $a существует, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 3 и null.
Если переменная $a НЕ существует, то выведите 'Верно', иначе выведите 'Неверно'.
Работа с логическими переменными
Если переменная $var равна true, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $var, равном true, false. Напишите два варианта скрипта - с короткой записью и с длинной.
Если переменная $var НЕ равна true, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $var, равном true, false. Напишите два варианта скрипта - с короткой записью и с длинной.
Работа с OR и AND
Если переменная $a больше нуля и меньше 5-ти, то выведите 'Верно', иначе выведите 'Неверно'. Проверьте работу скрипта при $a, равном 5, 0, -3, 2.
Если переменная $a равна нулю или равна двум, то прибавьте к ней 7, иначе поделите ее на 10. Выведите новое значение переменной на экран. Проверьте работу скрипта при $a, равном 5, 0, -3, 2.
Если переменная $a равна или меньше 1, а переменная $b больше или равна 3, то выведите сумму этих переменных, иначе выведите их разность (результат вычитания). Проверьте работу скрипта при $a и $b, равном 1 и 3, 0 и 6, 3 и 5.
Если переменная $a больше 2-х и меньше 11-ти, или переменная $b больше или равна 6-ти и меньше 14-ти, то выведите 'Верно', в противном случае выведите 'Неверно'.
На switch-case
Переменная $num может принимать одно из значений: 1, 2, 3 или 4. Если она имеет значение '1', то в переменную $result запишем 'зима', если имеет значение '2' – 'лето' и так далее. Решите задачу через switch-case.
Задачи
В переменной $day лежит какое-то число из интервала от 1 до 31. Определите в какую декаду месяца попадает это число (в первую, вторую или третью).
В переменной $month лежит какое-то число из интервала от 1 до 12. Определите в какую пору года попадает этот месяц (зима, лето, весна, осень).
В переменной $year хранится год. Определите, является ли он високосным (в таком году есть 29 февраля). Год будет високосным в двух случаях: либо он делится на 4, но при этом не делится на 100, либо делится на 400. Так, годы 1700, 1800 и 1900 не являются високосными, так как они делятся на 100 и не делятся на 400. Годы 1600 и 2000 - високосные, так как они делятся на 400.
Дана строка с символами, например, 'abcde'. Проверьте, что первым символом этой строки является буква 'a'. Если это так - выведите 'да', в противном случае выведите 'нет'.
Дана строка с цифрами, например, '12345'. Проверьте, что первым символом этой строки является цифра 1, 2 или 3. Если это так - выведите 'да', в противном случае выведите 'нет'.
Дана строка из 3-х цифр. Найдите сумму этих цифр. То есть сложите как числа первый символ строки, второй и третий.
Дана строка из 6-ти цифр. Проверьте, что сумма первых трех цифр равняется сумме вторых трех цифр. Если это так - выведите 'да', в противном случае выведите 'нет'.