Примеры решения задач

Задача

Задача. Если переменная $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-ти цифр. Проверьте, что сумма первых трех цифр равняется сумме вторых трех цифр. Если это так - выведите 'да', в противном случае выведите 'нет'.