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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2011, 18:14   #31
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Не смейтесь пожалуйста за вопрос,можете мне подсказать как выводить кол-во чего-либо.Например нулей или равных элементов.Фрагмент кода нахождения кол-во.
Faridik вне форума Ответить с цитированием
Старый 02.08.2011, 18:23   #32
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Могу написать код, решающий задачу. Не знаю насколько это поможет)
Код:
max=0; temp=0;
for (i=0;i<n;i++)
{
   if (a[i]!=0) temp=0;
   else
       temp++;
   if (temp>max) max=temp;
}
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.08.2011, 18:28   #33
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Спасибо за код.А вот быстренько объяснить сможешь?
Faridik вне форума Ответить с цитированием
Старый 02.08.2011, 18:52   #34
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Цитата:
Сообщение от Faridik Посмотреть сообщение
Код:
int i,n,min;
        n=5;
        int a[]={6,2,0,-5,-1};
        min=a[0];
        for (i=1;i<n;i++)
            if (a[i]<min & a[i]>0)
            {
            min=a[i];
            }
        System.out.println(min);
Почему когда первый элемент отрицательный,алгоритм берет сразу его,без проверки.Весь день мучаюсь,не могу разобраться. ((
Я нашел решение.Надо дойти до первого положительного и потом уже, как я делал.Или, второй вариант: надо
минимуму присвоить вначале не первый элемент а максимально возможный положительный.
Faridik вне форума Ответить с цитированием
Старый 02.08.2011, 18:54   #35
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Проходим весь массив. Если текущий элемент 0 — +1 к временной переменной, иначе обнуляем ее. Если временная переменная больше макс, то присваиваем ее значение макс (т.е. потом в макс и будет максимальное кол-во подряд идущих нулей).

Я, кстати, почему-то не уверен, что это работает но вроде все правильно.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.08.2011, 18:56   #36
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Я, кстати, почему-то не уверен, что это работает но вроде все правильно.
Я проверил,сработало правильно.Спасибо ))
Faridik вне форума Ответить с цитированием
Старый 02.08.2011, 20:33   #37
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Я нашел решение.Надо дойти до первого положительного и потом уже, как я делал.Или, второй вариант: надо
минимуму присвоить вначале не первый элемент а максимально возможный положительный.
я ещё 25 июля написал пост #14
Почему Вы его проигнорировали?...
Там был вполне себе рабочий алгоритм.
И ещё, он был достаточно надёжный - даже если в массиве не было бы ни одного положительного, он такую ситуацию правильно разруливал...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.08.2011, 13:23   #38
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Сам незнаю почему,код просто тогда не понравился ))
А еще я вот никак не могу понять момент вывода кол-во элементов.Можете этот момент объяснить?
Faridik вне форума Ответить с цитированием
Старый 03.08.2011, 13:29   #39
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Какой момент? Вывода чего? Количества элементов в массиве (динамическом?) ?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 03.08.2011, 14:01   #40
Faridik
Форумчанин
 
Аватар для Faridik
 
Регистрация: 08.08.2008
Сообщений: 117
По умолчанию

Найти наибольшее количество подряд идущих равных элементов. Вот например в этой задаче фрагмент кода который находит КОЛ-ВО подряд идущих равных элементов.
Faridik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос начинающего по компилятору Tmod Софт 7 28.08.2010 22:10
Вопрос от начинающего ProGus Microsoft Office Excel 1 10.08.2010 14:30
Инструментарий начинающего... Всеслав Общие вопросы C/C++ 6 24.12.2008 15:39
Портфолио начинающего программиста С++ Марья Свободное общение 1 12.06.2008 08:16