С++, помогите решить задачу с массивами
В первой строке входных данных вводится натуральное число N, не превосходящее 100.
В следующей строке вводятся N целых чисел через пробел - элементы массива. Каждое число по модулю не превосходит 109.
Формат выходных данных
Выводите "Min", если в массиве первым встретится минимум и "Max", если максимум.
Примечания
В задачу нужно отправить только описанный фрагмент кода.
--------------
5
4 3 6 1 2
Max
83
-854 631 -866 -558 -597 -940 -671 410 194 -771 -897 -733 -805 395 669 613 -637 -646 -877 -632 530 -255 642 -34 63 372 -406 -747 -471 -912 527 547 -297 -729 -310 -118 5 560 -487 -555 156 -476 221 -797 -64 -844 -289 -566 13 -663 824 773 -155 17 -803 457 -222 861 -643 -106 -714 695 -125 916 81 -561 -605 954 549 -811 -768 -748 -607 95 373 639 -307 685 -889 -441 110 -822 -696
Min
Приложения:

damskiyugodnik43:
ты девочка?
Ответы
Ответ дал:
0
Здесь ничего не написано про случай, если максимум = минимуму, поэтому его не учитываем.
Идея программы: просто ищем индекс первого максимального и первого минимального, а затем сравниваем их
Фрагмент кода:
int max = a[0], min = a[0];
int i_max = 0, i_min = 0;
for (int i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];
i_max = i;
}
if (a[i] < min) {
min = a[i];
i_min = min;
}
}
if (i_max > i_min)
cout << "MAX";
else if (i_min > i_max)
cout << "MIN";
Похожие вопросы
1 год назад
2 года назад
7 лет назад
9 лет назад