Как найти индекс максимального элемента в c++?

Пользователь

от elissa , в категории: C/C++ , 8 месяцев назад

Как найти индекс максимального элемента в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от ciara , 7 месяцев назад

@elissa 

В C++ можно найти индекс максимального элемента в массиве или векторе, используя цикл for и переменные для хранения максимального значения и его индекса. Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <vector>

int main() {
    std::vector<int> numbers = {10, 5, 15, 3, 8}; // Пример вектора чисел

    int max = numbers[0]; // Первый элемент вектора
    int index = 0; // Индекс максимального элемента

    for (int i = 1; i < numbers.size(); i++) {
        if (numbers[i] > max) { // Проверяем, является ли текущий элемент больше текущего максимального значения
            max = numbers[i]; // Если да, то обновляем максимальное значение
            index = i; // И сохраняем его индекс
        }
    }

    std::cout << "Максимальный элемент: " << max << std::endl;
    std::cout << "Индекс максимального элемента: " << index << std::endl;

    return 0;
}


Программа выведет:

1
2
Максимальный элемент: 15
Индекс максимального элемента: 2


В этом примере мы создали вектор чисел numbers и инициализировали его значениями. Затем мы прошли по всем элементам вектора с помощью цикла for, начиная со второго элемента (индекс 1) до последнего (индекс numbers.size() - 1). В каждой итерации мы сравниваем текущий элемент с текущим максимальным значением и, если текущий элемент больше, обновляем значение max и его индекс. В конце программы мы выводим максимальное значение и его индекс на экран.