Создавать и выполнять программы на универсальном языке программирования · 170 заданий
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с осн…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент, запись которого в системе счисления с осн…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в системе счисления с основанием 5 четырёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет количество элементов, запись которых в системе счисления с ос…
Программирование
- Задание №16№16
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна…
Программирование
- Задание №16№16
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 8. В ответе запишите количество искомых элементов.
Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
168 280 888 952 4120 0 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо проанализировать каждое введённое число и проверить, удовлетворяет ли оно двум условиям в шестнадцатеричной системе счисления: трёхзначности и окончанию на цифру 8.
Шаг 1. Разбор условий.
1. Трёхзначность в 16-ричной системе. Число является трёхзначным в системе счисления с основанием 16, если оно находится в диапазоне от 10016 до FFF16.
Переведём эти границы в десятичную систему:
Нижняя граница: 1⋅162+0⋅161+0⋅160=256.
Верхняя граница: 15⋅162+15⋅161+15⋅160=4095.
Следовательно, число x должно удовлетворять условию: 256≤x≤4095.
2. Окончание на цифру 8. Последняя цифра числа в любой системе счисления — это остаток от деления этого числа на основание системы. Значит, остаток от деления числа на 16 должен быть равен 8.
Условие: x(mod16)=8.
Шаг 2. Алгоритм решения.
1. Создаём переменную-счётчик (например, count) и обнуляем её.
2. Организуем цикл чтения чисел до тех пор, пока не встретим 0.
3. Внутри цикла для каждого числа проверяем: (оно ≥256) И (оно ≤4095) И (остаток от деления на 16 равен 8).
4. Если все условия верны, увеличиваем счётчик на 1.
5. После окончания цикла выводим значение счётчика.
Шаг 3. Проверка примера.
- 168: 168<256 (не подходит).
- 280: 256≤280≤4095 и 280(mod16)=8 (подходит, 280=17⋅16+8).
- 888: 256≤888≤4095 и 888(mod16)=8 (подходит, 888=55⋅16+8).
- 952: 256≤952≤4095 и 952(mod16)=8 (подходит, 952=59⋅16+8).
- 4120: 4120>4095 (не подходит).
Итого: 3 числа.
Пример реализации на языке Python:
count = 0
x = int(input())
while x != 0:
if 256 <= x <= 4095 and x % 16 == 8:
count += 1
x = int(input())
print(count)
Ответ: 3
Источник: ФИПИ