За последние 24 часа нас посетили 60289 программистов и 1813 роботов. Сейчас ищут 847 программистов ...

вывод данных из массива - сортировка

Тема в разделе "PHP для новичков", создана пользователем Игорь_Vasinsky, 23 дек 2008.

Статус темы:
Закрыта.
  1. Игорь_Vasinsky

    Игорь_Vasinsky Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    203
    Симпатии:
    0
    Адрес:
    Уфа
    есть файл

    count.txt

    содержимое: $count="2|0|0|3|0|1|0|5|0|7|3|4|1|2|0|3|1";

    Необходимо отобразить 5 максимальных чисел

    Адамант предложил сделать так:
    Код (Text):
    1.  
    2. <?php
    3. include 'count.txt';
    4.  
    5. // сколько чисел нужно извлечь
    6. $max_num = 5;
    7.  
    8. $arr = explode('|', $count);
    9. rsort($arr);
    10.  
    11. $tmp_max    = $arr[0];
    12. $max[0] = $arr[0];
    13.  
    14. for ($i = 0; $i < sizeof($arr); $i++) {
    15.     if ($arr[$i] < $tmp) {
    16.         $max[] = $arr[$i];
    17.         $tmp_max   = $arr[0];  
    18.     }
    19.     if (sizeof($max) >= $max_num) {
    20.         break;
    21.     }
    22. }
    23.  
    24. // смотрим результат
    25. echo "<pre>";
    26. print_r($max);
    27. echo "</pre>";
    28. ?>
    Не помогло!

    Выдал просто результат 7

    А необходимо:

    7 5 4 3 3

    ...

    Вот, а тут ещё появилась необходимость подстчитать порядковые номера этих чисел в массиве.

    7 (10) 5 (8) 4 (12) 3 (4) 3 (11) (причём как вы заметили тройки засчитались - те которые впереди)

    Подскажите как реализовать.
     
  2. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
  3. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    Тема закрыта
     
Статус темы:
Закрыта.