Задача №13. Создайте функцию, которая принимает на вход массив случайных чисел из диапазона [5..12] и выведете на экран строку
Primary tabs
Задача из этого списка.
<?php
/*Создайте функцию, которая принимает на вход массив случайных чисел из диапазона [5..12]. Обходит этот массив и делает для каждого элемента следующее (пусть она оказывает побочный эффект прямо в своём теле):
Если это число равно 5 -- то выведете на экран строку "пять", если 6 -- то строку "шесть", если 7 то число "7", иначе -- строку "какое-то другое число".
Используйте для решения задачи оператор switch (link is external) */
function createRandomArray($amountNums) {
for($a = 1; $a <= $amountNums; $a++) {
$randomArray[] = rand(5, 12);
}
return $randomArray;
}
function outputLinesFromArray($randomArray) {
foreach($randomArray as $elem) {
switch($elem) {
case '5':
echo "Пять", '<br>';
break;
case '6':
echo "Шесть", '<br>';
break;
case '7':
echo "Семь", '<br>';
break;
default :
echo "Какое-то другое число", '<br>';
break;
}
}
}
$randomArray = createRandomArray(5); //создаём массив с нужным N-элементов
outputLinesFromArray($randomArray);- Log in to post comments
- 9640 reads
melisa
Thu, 07/12/2018 - 14:22
Permalink
не объявлен массив
не объявлен массив $randomArray. Если передать в createRandomArray() ноль - будет ошибка.
melisa
Thu, 07/12/2018 - 15:15
Permalink
оформление
Перед return тоже.
Вообще, ознакомьтесь с PSR-стандартом, это важно для работы в любой компании.
Sver4ok
Thu, 07/12/2018 - 22:51
Permalink
Подправил
<?php /*Создайте функцию, которая принимает на вход массив случайных чисел из диапазона [5..12]. Обходит этот массив и делает для каждого элемента следующее (пусть она оказывает побочный эффект прямо в своём теле): Если это число равно 5 -- то выведете на экран строку "пять", если 6 -- то строку "шесть", если 7 то число "7", иначе -- строку "какое-то другое число". Используйте для решения задачи оператор switch (link is external) */ function createRandomArray($amountNums) { $randomArray = []; for ($a = 1; $a <= $amountNums; $a++) { $randomArray[] = rand(5, 12); } return $randomArray; } function outputLinesFromArray($array) { if (!empty ($array)) { foreach ($array as $elem) { switch ($elem) { case '5': echo "Пять", '<br>'; break; case '6': echo "Шесть", '<br>'; break; case '7': echo "Семь", '<br>'; break; default : echo "Какое-то другое число", '<br>'; break; } } } } $array = createRandomArray(10); //создаём массив с нужным N-элементов outputLinesFromArray($array);melisa
Tue, 07/17/2018 - 16:55
Permalink
читайте внимательнее
читайте внимательнее:
Sver4ok
Tue, 07/17/2018 - 20:51
Permalink
Между двух этих блоков
После блока функции над строку пустую вставлять тип?
А с return что сделать? зачем пустая строка перед ним, он же в блоке функции? в пср ничего не написано про него прост.
melisa
Wed, 07/18/2018 - 12:40
Permalink
про return
Действительно, про return не написано, но перед ним лучше тоже делать пропуск - так больше внимание обращается на то, что возвращает функция. Также можно делать пропуски после функций и после управляющих структур (условий и циклов), - это повышает читаемость кода, нечего скупердяйствовать ;)
function createRandomArray($amountNums) { $randomArray = []; for ($a = 1; $a <= $amountNums; $a++) { $randomArray[] = rand(5, 12); } return $randomArray; } function outputLinesFromArray($array) { if (!empty ($array)) { foreach ($array as $elem) { switch ($elem) { case '5': echo "Пять", '<br>'; break; case '6': echo "Шесть", '<br>'; break; case '7': echo "Семь", '<br>'; break; default : echo "Какое-то другое число", '<br>'; break; } } } } outputLinesFromArray(createRandomArray(10));Также можно делать пропуск строки перед циклами и условиями, только если они не сразу после {
Кстати, открывающая фигурная скобка { в функциях, методах и классах обязательно переносится на следующую строку.
melisa
Wed, 07/18/2018 - 12:41
Permalink
принято
принято