Задача №10 - Найти максимальное значение массива
Primary tabs
Задачи №10 из этого списка
Условие задачи:
Задайте случайным образом массив из N элементов (целых чисел). Найдите максимальное число и напечатайте его
Мое решение:
<?php
function createArray ($m){
for ($i = 0; $i < $m; $i++){
$mass[$i] = rand(1, 85);
}
return $mass;
}
$arr = createArray(rand(10, 15));
echo '<pre>';
var_dump($arr);
function more($a){
rsort($a);
echo $a[0];
}
more($arr);- Log in to post comments
- 7421 reads
melisa
Fri, 10/19/2018 - 19:45
Permalink
замечания и предложения
function more($a){Непонятное название, попробуйте назвать функцию по тому, что она делает
iov84
Sun, 11/11/2018 - 19:39
Permalink
исправления и комментарии
Функцию и не только... переименовал (уроки не прошли даром), ниже альтернативный вариант решения задачи:
<?php function createArray ($n){ for ($i = 0; $i < $n; $i++){ $arr[$i] = rand(1, 85); } return $arr; } $a = createArray(rand(10, 15)); echo '<pre>'; var_dump($a); function printMaximumValueArray($a){ $b = 0; for ($i = 0; $i < count ($a); $i++){ if ($a[$i] >= $b) { $b = $a[$i]; $c = $i; } } echo 'Максимальное значение массива ' . $b . ' его индекс ' . $c; } printMaximumValueArray($a);... возвращаясь к вопросу универсальности и "охвата всех возможных вариантов значений" и возможного "пульса пациента" - данный код будет работать если в массиве есть отрицательные и положительные значения, но если в массиве только отрицательные значение, он работать не будет...
melisa
Mon, 11/19/2018 - 13:51
Permalink
предложение
Ну и плохо. Вы понимаете по какой причине?
Потому что вы первый элемент сравниваете с 0. Напрмер, что Вам мешает вместо этого написать так:
Если значение равно максимальному, нет смысла его заменять. Это лишнее.
iov84
Sun, 12/09/2018 - 19:23
Permalink
все гениальное - просто!
<?php function createArray ($n){ for ($i = 0; $i < $n; $i++){ $arr[$i] = rand(-85, 85); } return $arr; } function printMaximumValueArray($a){ $b = $a[0]; for ($i = 0; $i < count ($a); $i++){ if ($a[$i] >= $b) { $b = $a[$i]; $c = $i; } } echo 'Максимальное значение массива ' . $b . ' его индекс ' . $c; } $a = createArray(rand(10, 15)); echo '<pre>'; var_dump($a); printMaximumValueArray($a);P.S. программирование с одной стороны меня до безумия увлекает, а с другой стороны пугает... достаточно внести совершенно не большие изменения в код... и он уже работает совершенно по другому!
melisa
Mon, 12/10/2018 - 14:51
Permalink
вы проигнорировали второе замечание
вы проигнорировали второе замечание
iov84
Mon, 12/10/2018 - 20:33
Permalink
исправился
<?php function createArray ($n){ for ($i = 0; $i < $n; $i++){ $arr[$i] = rand(-85, 85); } return $arr; } function printMaximumValueArray($a){ $b = $a[0]; for ($i = 0; $i < count ($a); $i++){ if ($a[$i] > $b) { $b = $a[$i]; $c = $i; } } echo 'Максимальное значение массива ' . $b . ' его индекс ' . $c; } $a = createArray(rand(10, 15)); echo '<pre>'; var_dump($a); printMaximumValueArray($a);