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