Пожалуйста решите на языке С++
Даны N целых чисел. Вывести наибольшее четное. Если четных нет, вывести слово NO
Входящие данные:
Во входящем потоке в первой строке задано целое число N – количество элементов числовой последовательности (0 < N < 100). Во второй строке через пробел перечислены значения элементов целочисленной последовательности. Значения элементов по модулю не превышают 30 000.
Пример входящего файла (input.txt):
5
11 12 3 20 17
Исходящие данные:
В исходный поток вывести одно целое число или слово 'NO'
Пример исходного файла (output.txt):
20
Ответы
Ответ дал:
1
Ответ:
#include <iostream>
using namespace std;
int main() {
int n, x, max_even = -1;
cin >> n;
for(int i = 0; i < n; i++) {
cin >> x;
if(x % 2 == 0 && x > max_even) {
max_even = x;
}
}
if(max_even == -1) {
cout << "NO";
} else {
cout << max_even;
}
return 0;
}
Объяснение:
Код сначала считывает количество элементов последовательности n, затем в цикле считывает n чисел и проверяет, является ли число четным и больше текущего максимального четного числа max_even. Если да, то max_even обновляется. В конце проверяется, было ли найдено хотя бы одно четное число. Если да, то выводится максимальное четное число, иначе выводится слово "NO".
Ksusha133:
Спасибо большое, вы просто гений
Вас заинтересует
3 месяца назад
3 месяца назад
3 месяца назад
1 год назад
7 лет назад
7 лет назад