Задание №16 — Алгоритмы и программирование
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых
в системе счисления с основанием 5 оканчивается чётной цифрой. Если среди входных данных таких элементов нет, программа должна вывести «NO».
Программа получает на вход в первой строке натуральное число – количество чисел N (3 ≤ N ≤ 10000), затем N натуральных чисел,
не превышающих 30 000, каждое в отдельной строке.
Программа должна вывести одно число – количество десятичных чисел (элементов последовательности), запись которых в 5-ричной системе счисления оканчивается чётной цифрой, или «NO», если среди входных данных таких элементов нет.
Пример работы программы
Входные данные | Выходные данные |
6 12 15 10 71 50 11 | 4 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число из последовательности и проверить условие, связанное с его представлением в пятеричной системе счисления.
1. Разбор условия. Нам нужно найти числа, запись которых в системе счисления с основанием оканчивается чётной цифрой. В любой системе счисления последняя цифра числа — это остаток от деления этого числа на основание системы. Следовательно, последняя цифра в пятеричной записи числа равна .
2. Проверка чётности. Получив последнюю цифру , мы должны проверить, является ли она чётной. Цифра чётная, если она делится на без остатка, то есть . К чётным цифрам в пятеричной системе относятся .
3. Алгоритм действий:
— Сначала считываем количество чисел .
— Создаём переменную-счётчик (например, count), изначально равную .
— В цикле раз считываем очередное число .
— Для каждого вычисляем остаток от деления на .
— Если этот остаток чётный, увеличиваем count на .
— После завершения цикла проверяем: если count > 0, выводим его значение, иначе выводим «NO».
4. Пример. Рассмотрим число .
. Цифра — чётная. Подходит.
Рассмотрим число .
. Цифра — чётная. Подходит.
Рассмотрим число .
. Цифра — нечётная. Не подходит.
5. Программная реализация (Python):
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if (x % 5) % 2 == 0:
count += 1
if count > 0:
print(count)
else:
print("NO")
В примере из условия даны числа: .
(чётная) — да;
(чётная) — да;
(чётная) — да;
(нечётная) — нет;
(чётная) — да;
(нечётная) — нет.
Итого: числа.
Ответ: 4
Источник: ФИПИ