С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Kaskelenrulit
0 / 0 / 0
Регистрация: 31.01.2014
Сообщений: 37
#1

Одномерный динамический массив, найти значение и позицию максимального элемента - C++

31.03.2014, 17:37. Просмотров 777. Ответов 9
Метки нет (Все метки)

Дан одномерный динамический массив размерностью N, найти значения и позицию максимального элемента
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2014, 17:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Одномерный динамический массив, найти значение и позицию максимального элемента (C++):

Найти номер последнего максимального элемента последовательности используя одномерный массив - C++
2 Задача:Дана последовательность из N действительных чисел найти номер последнего максимального элемента используя одномерный массив.

Массив: Найти значение максимального элемента каждого столбца - C++
Дан двумерный массив. Найти значение максимального элемента каждого столбца.

Есть массив а [5] [5]. Найти значение и номер максимального элемента 3-го столбика массива - C++
Самым самым простым способом, так сказать для начинающий чайников.

Дан одномерный массив. Если произведение элементов с чётными номерами больше произведения с нечетными номерами, то найти номер максимального элемента - C++
Дан одномерный массив. Если произведение элементов с чётными номерами больше произведения с нечетными номерами, то найти номер...

Одномерный динамический массив, передача в функции, добавление и удаление элемента - C++
Разбираю одномерные динамические массивы. Пока всё просто, пока и не возникает вопросов. Массив объявил, проинициализировал, сгенерировал и...

Как добавить новое значение в одномерный динамический массив? - C++
При создании динамического массива и добавления нового значение, значение куда-то теряется. Кусок кода: void set_new_value (int...

9
Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 17:41 #2
1. Объявляете динамический массив.
2. Заполняете его
3. Создаете переменную max, даете ей значение первого элемента массива, а также переменную maxIndex со значением 0 (индекс первого элемента массива).
4. Создаете цикл, в котором перебираете каждый элемент, сравнивая его с max, если число больше max, то присваиваем переменной max новое значение, а переменной maxIndex значение счетчика цикла.
5. После выполнения цикла выводите значения двух переменных.
Сами справитесь с кодом?
0
enyx
7 / 7 / 2
Регистрация: 03.07.2013
Сообщений: 42
31.03.2014, 17:50 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#define SIZE 5
using namespace std;
 
int main()
{
    int *dyn_array = new int[SIZE];
    dyn_array[0] = 86;
    dyn_array[1] = 8;
    dyn_array[2] = 3;
    dyn_array[3] = 91;
    dyn_array[4] = 15;
    int max = dyn_array[0];
    int max_index;
    for(int i=0;i<SIZE;i++)
    {
        if(dyn_array[i] > max)
        {
            max = dyn_array[i];
            max_index = i;
        }
    }
    cout<<"Maximum = "<<max<<endl;
    cout<<"Index of maximum = "<<max_index<<endl;
    return 0;
}
0
Kaskelenrulit
0 / 0 / 0
Регистрация: 31.01.2014
Сообщений: 37
31.03.2014, 17:52  [ТС] #4
если random?
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
31.03.2014, 17:54 #5
Тогда заменяете
C++
1
2
3
4
5
dyn_array[0] = 86;
    dyn_array[1] = 8;
    dyn_array[2] = 3;
    dyn_array[3] = 91;
    dyn_array[4] = 15;
На
C++
1
2
for(int i = 0; i < SIZE; ++i)
dyn_array[i] = rand()%100;
0
Kaskelenrulit
0 / 0 / 0
Регистрация: 31.01.2014
Сообщений: 37
31.03.2014, 18:07  [ТС] #6
Тамика если я вожу с клавы? и еще Написать программу найти среднее арифметическое значения не 0 элементов
0
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,229
Записей в блоге: 27
31.03.2014, 18:09 #7
Вы спрашивали про random. Если хотите вводить сами, тогда
C++
1
2
for(int i  = 0; i < SIZE; +i)
std::cin >> dyn_array[i];
0
enyx
7 / 7 / 2
Регистрация: 03.07.2013
Сообщений: 42
31.03.2014, 18:19 #8
но дело в том что при использования rand() могут быть 2 или больше максимальных элементов,и тогда нужно учесть что программа выдает последний индекс максимального элемента
0
Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 18:23 #9
enyx, даже если выведет индекс последнего максимального элемента, будет ли это ошибкой?

Добавлено через 1 минуту
Цитата Сообщение от enyx Посмотреть сообщение
if(dyn_array[i] > max)
* * * * {
* * * * * * max = dyn_array[i];
* * * * * * max_index = i;
* * * * }
И да, тут на последний элемент (даже если он максимальный) никогда не перейдет: 5 не больше пяти. А это значит, что если есть ряд: 3, 6, 5, 8, 1, 3, 8, то выведется максимальное число - 8, его индекс - 3.
0
enyx
7 / 7 / 2
Регистрация: 03.07.2013
Сообщений: 42
31.03.2014, 18:33 #10
ну да спaсибо
я так думал
if(dyn_array[i] >= max)
* * * * {
* * * * * * max = dyn_array[i];
* * * * * * max_index = i;
* * * * }
0
31.03.2014, 18:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2014, 18:33
Привет! Вот еще темы с ответами:

Найти значение максимального элемента - C++
Дан целочисленный вектор A(n). Найти значение максимального элемента среди четных (по значению) элементов, расположенных до первого...

Массив: Все отрицательные элементы увеличить на значение максимального элемента - C++
Составить программу обработки одномерного массива. Доступ к элементам массива осуществлять с помощью указателя. Элементы массива заполнить,...

В массиве X(N) найти значение максимального элемента массива и найти, сколько таких элементов. - C++
В массиве X(N) найти k1 - количество элементов массива, расположенных после минимального элемента и k2 - количество элементов массива,...

Найти значение и порядковый номер максимального элемента заданного массива - C++
Здравствуйте уважаемые , нужна помощь в решение задачи и небольшая консультация по 2 во 2 ругается на строчки с текстом ...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.