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