Учебные задачи PHP. Задача 11
Primary tabs
function numberMinArray($number) { for ($i = 0; $i < $number; $i ++) { $arr[] = rand(1, $number); } $numberMin = min($arr); return $numberMin; } $number = 20; $a = numberMinArray($number); echo "Mинимальное число = $a.";
Без функции
min();
function numberMinInArray($number) { for ($i = 0; $i < $number; $i ++) { $arr[] = rand(1, $number); } $numberMin = $arr[0]; foreach ($arr as $v) { if ($v < $numberMin) { $numberMin = $v; } } return $numberMin; } $number = 20; $a = numberMinInArray($number); echo "Mинимальное число = $a.";
- Log in to post comments
- 6682 reads
melisa
Tue, 04/23/2019 - 17:18
Permalink
замечания
Если в условии не указано, из какого диапазона должны быть числа, можно использовать функцию rand() без аргументов.
Но это не ошибка, это просто для ознакомления
Laven
Wed, 04/24/2019 - 15:57
Permalink
Модифицировал код задачи
Laven
Sat, 04/27/2019 - 10:56
Permalink
Исправил код задачи
melisa
Tue, 04/30/2019 - 17:12
Permalink
хорошо, но
хорошо, но покажите корректное решение с 2мя функциями (не стандартной min(), а обеими Вашими)
Laven
Wed, 05/01/2019 - 09:49
Permalink
Модифицировал код задачи
vedro-compota
Tue, 05/07/2019 - 15:52
Permalink
решение рабочее
В принципе это рабочий подход - он даже позволяет вам справится с ситуацией, когда на вход будет подан пустой массив (вы возвращаете null что корректно), но если считать, что массив должен быть не пуст, то перед циклом arrMin-у обычно дают значение первого элемента массива.
А где была взят такой подход? сами придумали?
_____________
матфак вгу и остальная классика =)
Laven
Tue, 05/07/2019 - 18:48
Permalink
Прокомментировал подход решения задачи
Да. Но если так прописать, то будет ошибка, что не определена переменная. Чтобы это исключить, только сегодня это понял, нужно сделать обход массива и тогда переменная $arr[0] будет определена. Такой код для восприятия сложнее, хотя и это тоже решение.
Решая задачу, я так и сделал, объявил
и получил ошибку о не объявленной переменной (обхода массива то не было). Возник вопрос, как объявить переменную? Посчитал, что этот вопрос не такой концептуально важный, чтобы головой прошибать бетонную стену, я обратился с вопросом к более опытным товарищам.
Получив ответ, я познакомился с двумя способами решения этого вопроса. Одновременно, для себя узнал хитрый подход решения вопроса объявления переменной через оператор OR.
Первый подход решения задачи. Тоже много, что из этого почерпнул:
Второй подход. Его и использовал:
И были комментарии по моим вопросам:
melisa
Thu, 05/09/2019 - 13:43
Permalink
принято
Интересный пример с or. Не видела раньше)
Задача засчитана.