Задание №16 — Алгоритмы и программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в системе счисления с основанием 5 четырёхзначна и оканчивается на цифру 1. В ответе запишите количество искомых элементов.
Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
86 136 271 496 731 0 | 3 |
Проверка решения с помощью ИИ доступна авторизованным пользователям
Решение.
Для решения этой задачи нам необходимо проанализировать каждое введённое число на соответствие двум условиям в пятеричной системе счисления:
1. Число должно быть четырёхзначным в системе счисления с основанием 5.
2. Число должно оканчиваться на цифру 1 в системе счисления с основанием 5.
Разберём эти условия подробнее:
Шаг 1. Условие четырёхзначности.
В любой системе счисления с основанием минимальное -значное число — это , а максимальное — это .
Для пятеричной системы () и четырёх знаков ():
Минимальное число: .
Максимальное число: .
Следовательно, в десятичной системе число должно удовлетворять условию: .
Шаг 2. Условие последней цифры.
Последняя цифра числа в системе счисления с основанием — это остаток от деления этого числа на .
Чтобы число в пятеричной системе оканчивалось на 1, остаток от деления десятичного числа на 5 должен быть равен 1.
Математически: .
Шаг 3. Анализ примера.
Проверим числа из примера:
— : (не подходит, оно трёхзначное в 5-ричной системе: ).
— : и (подходит, это ).
— : и (подходит, это ).
— : и (подходит, это ).
— : (не подходит, оно пятизначное в 5-ричной системе: ).
Итого: 3 числа.
Шаг 4. Алгоритм программы.
1. Создаём счётчик .
2. Считываем числа в цикле, пока не встретим 0.
3. Для каждого числа проверяем: (число ) И (число ) И (остаток от деления на 5 равен 1).
4. Если условия верны, увеличиваем на 1.
5. Выводим результат.
Ответ: 3
Источник: ФИПИ