Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
stels009
 Аватар для stels009
15 / 15 / 0
Регистрация: 05.04.2011
Сообщений: 402
#1

Первый максимальный элемент массива - C++

25.05.2014, 05:04. Просмотров 173. Ответов 2
Метки нет (Все метки)

Ку всем.
Вообщем стоит задача найти ПОСЛЕДНИЙ МАКСИМАЛЬНЫЙ элемент массива, найти просто максимальный элемент массива я вроде бы смог:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        for (int i = 0; i < v.size();) //Вычисление максимального элемента и его номера.
        {
            str.clear();
            for (int j = 1; j <=10; j++)
            {
                if (i == v.size()) break;
                stels009 = Round(v[i++]);
                if(stels009 > stels921)
                {
                    core = i;
                    stels921 = stels009;
                }
            }
        }
А вот что значит найти ПОСЛЕДНИЙ МАКСИМАЛЬНЫЙ я никак не пойму.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2014, 05:04     Первый максимальный элемент массива
Посмотрите здесь:

C++ максимальный первый элемент в строке матрицы
Поменять первый максимальный и последний минимальный элемент массива C++
C++ Найти его первый максимальный элемент
если первый элемент максимальный ответ не правильно выводить что делать мне C++
поменять местами максимальный элемент и первый, используя одномерный массив на c++ C++
Выполнить кольцевой сдвиг элементов массива так чтобы его первый максимальный элемент оказался на k-том месте C++
В последовательности из n действительных чисел поменять местами максимальный элемент и первый C++
C++ Найти первый максимальный элемент массива и заменить его нулём
C++ Поменять местами максимальный элемент массива и первый
C++ Переместить первый и максимальный элемент строки
C++ Обнулить первый максимальный элемент в указанном столбце матрицы
C++ Из положительных элементов массива вычесть первый элемент, из остальных - второй элемент

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ryuk
 Аватар для Ryuk
179 / 177 / 33
Регистрация: 10.06.2011
Сообщений: 871
25.05.2014, 08:32     Первый максимальный элемент массива #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
stels009, когда идет поиск, ищите не "больше", а "больше или равно".
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
25.05.2014, 09:02     Первый максимальный элемент массива #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Первый максимум можно найти двумя способами:
1 Перебирать от начала к концу, сравнивать оператором >
C++
1
2
3
4
5
6
7
for (int i = 0, int m=i; i < v.size(); ++i)
{
 if (v[i]>v[m])
 {
  m=i;
 }
}
.
2. Перебирать от конца к началу, сравнивать оператором >=:
C++
1
2
3
4
5
6
7
for (int i = v.size()-1, int m=i; i >0; --i)
{
 if (v[i]>=v[m])
 {
  m=i;
 }
}
.
Последний наоборот:
1 Перебирать от начала к концу, сравнивать оператором >=
C++
1
2
3
4
5
6
7
for (int i = 0, int m=i; i < v.size(); ++i)
{
 if (v[i]>=v[m])
 {
  m=i;
 }
}
.
2. Перебирать от конца к началу, сравнивать оператором >:
C++
1
2
3
4
5
6
7
for (int i = v.size()-1, int m=i; i >0; --i)
{
 if (v[i]>v[m])
 {
  m=i;
 }
}
.

Добавлено через 3 минуты
Если поменять сравниваемые элементы местами, или, но не и ищется минимум, то > заменяется на <, а >= заменяется на <=. В любом случае надо перебрать все элементы.
Yandex
Объявления
25.05.2014, 09:02     Первый максимальный элемент массива
Ответ Создать тему
Опции темы

Текущее время: 15:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru