
3. Дан массив, содержащий неотрицательные целые числа, не превышающие 10 000. Необходимо вывести: -
минимальный чётный элемент, если количество чётных элементов не больше, чем нечётных; - минимальный нечётный элемент, если количество нечётных элементов меньше, чем чётных. Например, для массива из шести элементов, равных соответственно 4, 6, 12, 17, 9, 8, ответом будет 9 — наименьшее нечётное число, поскольку нечётных чисел в этом массиве меньше.

Ответы на вопрос

// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),0,99); a.Println;
var s:=a.Partition(x->x.IsEven);
if s[0].Count<=s[1].Count then Writeln(s[0].Min)
else Writeln(s[1].Min)
end.
Примеры
n= 9
33 43 60 94 5 19 84 58 6
5
n= 10
54 55 71 65 79 88 71 98 8 71
8



Для решения этой задачи нужно пройти по всем



Для решения данной задачи нужно выполнить следующие шаги:
1. Создать переменные min_even и min_odd, которые будут хранить минимальные четное и нечетное числа соответственно. Изначально эти переменные можно инициализировать значением, превышающим максимально возможное число в массиве, например, min_even = min_odd = 10001.
2. Создать переменные count_even и count_odd, которые будут хранить количество четных и нечетных чисел соответственно. Изначально эти переменные можно инициализировать нулем.
3. Пройти по каждому элементу массива и проверить его на четность. Если элемент четный, то сравнить его с текущим минимальным четным числом (min_even). Если элемент меньше, то обновить значение min_even и увеличить count_even на 1.
4. Если элемент нечетный, то сравнить его с текущим минимальным нечетным числом (min_odd). Если элемент меньше, то обновить значение min_odd и увеличить count_odd на 1.
5. После прохода по всем элементам массива проверить значения count_even и count_odd. Если count_even не больше или равно count_odd, то вывести значение min_even. В противном случае вывести значение min_odd.
Пример решения на языке Python:
```python def find_min_element(arr): min_even = min_odd = 10001 count_even = count_odd = 0
for num in arr: if num % 2 == 0: # проверка на четность if num < min_even: min_even = num count_even += 1 else: if num < min_odd: min_odd = num count_odd += 1
if count_even <= count_odd: return min_even else


Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili