Задание №16 — Алгоритмы и программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 5. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
5 165 277 885 949 4117 | 3 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число последовательности и проверить, удовлетворяет ли оно двум условиям в шестнадцатеричной системе счисления: трёхзначности и окончанию на цифру 5.
Шаг 1. Разбор условий.
1. Трёхзначность в шестнадцатеричной системе. Число является трёхзначным в системе с основанием , если оно находится в диапазоне от до .
Переведём эти границы в десятичную систему:
Нижняя граница: .
Верхняя граница: .
Следовательно, число должно удовлетворять условию: .
2. Окончание на цифру 5. Последняя цифра числа в любой системе счисления — это остаток от деления этого числа на основание системы. В нашем случае остаток от деления числа на должен быть равен .
Условие: .
Шаг 2. Алгоритм решения.
1. Сначала считываем количество чисел .
2. Создаём переменную-счётчик (например, count) и обнуляем её.
3. В цикле от до считываем очередное число.
4. Проверяем, выполняются ли одновременно оба условия: И .
5. Если условия верны, увеличиваем счётчик на .
6. После завершения цикла выводим значение счётчика.
Шаг 3. Пример реализации на языке Python:
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if 256 <= x <= 4095 and x % 16 == 5:
count += 1
print(count)
Шаг 4. Проверка примера из условия.
Даны числа: .
1. : (не трёхзначное в -ричной системе). Пропускаем.
2. : . Проверяем остаток: (так как ). Подходит. (Счётчик = 1)
3. : . Проверяем остаток: (так как ). Подходит. (Счётчик = 2)
4. : . Проверяем остаток: (так как ). Подходит. (Счётчик = 3)
5. : (четырёхзначное в -ричной системе). Пропускаем.
Итого: .
Ответ: 3
Источник: ФИПИ