Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Функция

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Master_pascal
Отправлено: 11 Января, 2013 - 09:37:53
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)

[+][+][+][+][+]


Можно я еще спрошу один вопрос
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function arr_max($arr) // Определяем функцию arr_max принимающую один аргумент
  3. {
  4.  // Входящие данные: Массив
  5.  // Исходящие данные: значение элемента в массиве.
  6.  
  7.   // Устанавливаем значение нулевого элемента как максимального
  8.   $max = $arr[0];
  9.  
  10.   for ($i = 1; isset($arr[$i]); $i++) // для каждого элемента массива
  11.     if ($arr[$i] > $max) // проверяем что больше. Текущее значение или максимум
  12.       $max = $arr[$i]; // Если максимум больше, то меняем максимум на новый
  13.  
  14.     $arr[1] = 95; // Поменяем значение первого элемента массива. Не задумывайтесь почему. Чуть позже увидите.
  15.  
  16.         // функция возвращает результат.
  17.         // Результат в данном случае самое большое число в массиве
  18.     return $max;
  19. }
  20.  
  21. // Закончилось определение функции. Дальше продолжение скрипта.
  22.  
  23.  
  24. $ar1 = array(4, 6, 12, 9, '5', 23);
  25. $ar2 = 'dabcjfutZfgh';
  26.  
  27. echo arr_max($ar1)."<br>\n"; // Выведет 23
  28.  
  29. echo '$ar1[1]'.$ar1[1]; // выведет 6 (а не 95, помните ту загадочную строку функции?). Получается значение не изменилось
  30. // Напомним: в одинарных кавычках значения переменных не подставляются
  31.  
  32. // подумайте над результатами такого вызова:
  33. echo arr_max($ar2);
  34. ?>


почему результатом echo arr_max($ar2) буква - u ?
разве буквы можно сравнивать Ха-ха
это даже не массив

(Отредактировано автором: 11 Января, 2013 - 09:59:20)

 
 Top
armancho7777777 Супермодератор
Отправлено: 11 Января, 2013 - 09:59:25
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Master_pascal пишет:

Вообще-то для данной задачи уже есть встроенная функция max($array)
 
 Top
Master_pascal
Отправлено: 11 Января, 2013 - 10:01:29
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)

[+][+][+][+][+]


armancho7777777 это я с урока взял
 
 Top
armancho7777777 Супермодератор
Отправлено: 11 Января, 2013 - 10:03:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




PHP:
скопировать код в буфер обмена
  1. function arr_max($arr)
  2. {
  3.         $max = 0;
  4.        
  5.         foreach($arr as $v)
  6.         {
  7.                 if ($v > $max)
  8.                 $max = $v;
  9.         }
  10.        
  11.         return $max;
  12. }

(Добавление)
Или ещё проще:
PHP:
скопировать код в буфер обмена
  1. function arr_max($arr)
  2. {
  3.         sort($arr, SORT_NUMERIC);
  4.         return array_pop($arr);
  5. }
 
 Top
Master_pascal
Отправлено: 11 Января, 2013 - 10:17:24
Post Id



Частый гость


Покинул форум
Сообщений всего: 147
Дата рег-ции: Дек. 2012  


Помог: 0 раз(а)

[+][+][+][+][+]


armancho7777777 ладно, спасибо пойду гуглить
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB