Максимальный элемент массива лучше всего искать с помощью цикла. Например, можно использовать for. Также требуется оператор if.
Вот соответствующий код:
1 2 3 4 5 6 7 8 |
max = A[0]; i_max = 0; for(i = 1; i < n; i++) if (A[i] > max) { max = A[i]; i_max = i; } |
Используются две переменные max - значение максимального элемента и i_max - номер максимального элемента.
Вначале максимальным элементом объявляется нулевой элемент массива, то есть самый первый, так как в С++ элементы массива нумеруются с нуля.
После этого в цикле последовательно проверяется, а не больше ли очередной элемент массива, чем текущий максимум. И, если больше, то значение и номер текущего максимума изменяются.
Обычно нужно сделать, чтобы массив вводил пользователь. Также обычно нужно вывести пользователю ответ. Ввод/вывод может осуществляться, например, в консольном режиме.
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 27 28 29 30 31 32 33 34 35 36 |
#include <iostream.h> // добавляем cin/cout #include <conio.h> // добавляем getch const int Nmax = 100; // задаём максимальный размер массива int main() { double A[Nmax]; int n; // тот размер массива, который задаваст пользователь double max; int i_max; // в этой переменной будет номер максимального элемента массива int i; // счётчик // пользователь вводит массив cout << "Input size "; // пользователь вводит размер массива cin >> n; cout << "Input elements "; // пользователь вводит сам массив for(i = 0; i < n; i++) cin >> A[i]; //поиск максимума max = A[0]; i_max = 0; for(i = 1; i < n; i++) if (A[i] > max) { max = A[i]; i_max = i; } // отображается найденный максимум cout << "A[" << i_max << "] = " << max; getch(); // ожидание нажатия return 0; } |