Модуль: (Python) Оператор цикла for. Типовые задачи


10. Минимальное не из всех

☰ Теория

Максимальное не среди всех

Если нам необходимо найти максимальное (минимальное) не среди всех вводимых чисел, а только среди чисел, удовлетворяющих определенному условию, то необходимо учитывать тот факт, что первое число, которое мы берем за начальное значение максимума (минимума) не всегда будет удовлетворять нашим требованиям.

Например, если мы ищем максимальное отрицательное число, то имея набор данных: \(\{5, -2, 4, 2, -1, -3\}\) мы получим в начальном значении максимума число 5, а оно положительное и больше любого отрицательного. И, следовательно, условие X > M всегда будет ложно.

Следовательно, в алгоритм из предыдущей задачи недостаточно добавить одну лишь проверку на отрицательное число, необходимо еще учитывать тот факт, что первое число может не удовлетворять требуемому условию (в данном случае быть отрицательным).

Исправить это можно с помощью добавления внутри цикла следующего условия:
 
псевдокод
если X - отрицательное, то
  если M >= 0 или M < X, то
    M = X

В указанном коде условие M >= 0 позволяет выполнить действие M = Х даже в том случае, если первоначально в переменную попало значение, которое заведомо больше остальных (в рассмотренном нами примере - значение равное 5).

Еще заметим, что если диапазон изменения чисел известен, то в качестве начального значения максимума (минимума) можно брать минимальное (максимальное) число из указанного диапазона.

Дано число N и последовательность из N чисел. Необходимо вывести минимальное четное число среди заданных N чисел.

Входные данные
В первой строке вводится число N - количество чисел  (\(N<=100\)). Далее идут N чисел по одному в строке (все числа целые, не превышающие по модулю 10 000). Среди N чисел имеется хотя бы одно четное число.

Выходные данные
Вывести на экран минимальное четное число среди всех N чисел.

 

Примеры
Входные данные Выходные данные
1 5
-2
1
2
3
0
-2

Напишите программу
Auto
       

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w641218
Free Pascal36
C#9
Java7
Python2709
PascalABC4
Комментарий учителя