Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме 15-35 тыс рублей в месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2014, 10:43   #1
cheburashkaRF
Пользователь
 
Регистрация: 09.11.2011
Сообщений: 22
По умолчанию Дан целочисленный массив размера N. Определить максимальное количество его одинаковых элементов.

Дан целочисленный массив размера N. Определить максимальное количество его одинаковых элементов.
PHP код:
$a = array(11,88,3,11,11,11);
$n=count($a);
$c=0;

    for (
$i 0$i $n$i++)
        {    
$r1=1;
            if(
$a[$i+1]>=$a[$i-1]){
            
$c++;        
            }
    }    
    echo 
$c
выводит 4 что вроде бы как правильно, а как сделать так чтобы вывести сам этот элемент( т. е. в моём примере это число 11 и оно встретилось 4 раза)

Последний раз редактировалось cheburashkaRF; 03.02.2014 в 10:48.
cheburashkaRF вне форума Ответить с цитированием
Старый 03.02.2014, 11:17   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,245
По умолчанию

а вы заполните массив, например, так:
Код:
$a = array(1,2, 3,4,5,6,7);
выполните Ваш код и удивитесь!..

p.s. если я не ошибаюсь, то ваш код считает, сколько элементов больше или равны предыдущему элементу...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.02.2014, 11:26   #3
cheburashkaRF
Пользователь
 
Регистрация: 09.11.2011
Сообщений: 22
По умолчанию

и как же правильно сделать?

Последний раз редактировалось cheburashkaRF; 03.02.2014 в 11:31.
cheburashkaRF вне форума Ответить с цитированием
Старый 03.02.2014, 11:29   #4
Metandrostenalon
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 108
По умолчанию

http://ru2.php.net/manual/ru/functio...unt-values.php
php,javascript
Metandrostenalon вне форума Ответить с цитированием
Старый 03.02.2014, 11:32   #5
cheburashkaRF
Пользователь
 
Регистрация: 09.11.2011
Сообщений: 22
По умолчанию

я про эту функцию знаю, вся солька в том что хочу сделать без неё
cheburashkaRF вне форума Ответить с цитированием
Старый 03.02.2014, 11:47   #6
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от cheburashkaRF Посмотреть сообщение
я про эту функцию знаю, вся солька в том что хочу сделать без неё
А с ней что не так?
Напиши аналог этой функции – и решил задачу с его помощью.
Andkorol вне форума Ответить с цитированием
Старый 03.02.2014, 11:54   #7
Metandrostenalon
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 108
По умолчанию

осторожно, говнокод!
PHP код:
$a = array(11,88,3,11,11,11);
$b = array();
foreach (
$a as $v) {
    
$b[$v]++;
}
arsort($b);
foreach (
$b as $k => $v) {
    
var_dump($k ' ' $v);
    break;

php,javascript
Metandrostenalon вне форума Ответить с цитированием
Старый 03.02.2014, 11:57   #8
cheburashkaRF
Пользователь
 
Регистрация: 09.11.2011
Сообщений: 22
По умолчанию

я хочу разобраться со своими ошибками,с неправильной логикой моей программы,прошу доработать мой код,а не юзать полезные стандартные функции,вот такие мои причуды,поэтому если можете переработайте мой код
cheburashkaRF вне форума Ответить с цитированием
Старый 03.02.2014, 12:10   #9
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от cheburashkaRF Посмотреть сообщение
я хочу разобраться со своими ошибками,с неправильной логикой моей программы,прошу доработать мой код,а не юзать полезные стандартные функции,вот такие мои причуды,поэтому если можете переработайте мой код
Так это разные вещи – разобраться со своими ошибками, и получить готовый код (да ещё и со всякими глупыми условностями).
Хочешь разобраться – для начала составь простейший алгоритм работы твоего скрипта, опиши последовательность действий.
И только потом начинай писать код – уже в процессе решая, что в нём использовать, а что нет.
Сейчас у тебя "хочу то – не знаю что, так не делать, это не использовать...".
Andkorol вне форума Ответить с цитированием
Старый 03.02.2014, 12:24   #10
cheburashkaRF
Пользователь
 
Регистрация: 09.11.2011
Сообщений: 22
По умолчанию

ещё раз,ты можешь не используя функцию array_count_values и подобные ей стандартные функции определить максимальное количество, одинаковых элементов массива?мне бы хотелось чтобы люди написали прогу с нуля и не использовали функции о которых я говорил, либо доработать/изменить мои неважные нароботки

Последний раз редактировалось cheburashkaRF; 03.02.2014 в 12:26.
cheburashkaRF вне форума Ответить с цитированием