Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру D. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
5 173 285 893 957 4125 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число из последовательности и проверить, удовлетворяет ли оно двум условиям в шестнадцатеричной системе счисления:
1. Число должно быть трёхзначным.
2. Число должно оканчиваться на цифру D.
Разберём эти условия подробнее:
Шаг 1. Условие трёхзначности в шестнадцатеричной системе.
Минимальное трёхзначное число в шестнадцатеричной системе — это 10016. Переведём его в десятичную систему: 1⋅162+0⋅161+0⋅160=256.
Максимальное трёхзначное число — это FFF16. Следующее за ним число — 100016, которое равно 163=4096.
Следовательно, десятичное число x является трёхзначным в шестнадцатеричной системе, если выполняется условие: 256≤x≤4095.
Шаг 2. Условие окончания на цифру D.
Последняя цифра числа в любой системе счисления — это остаток от деления этого числа на основание системы. В шестнадцатеричной системе цифра D соответствует десятичному числу 13.
Значит, число должно давать остаток 13 при делении на 16. Математически это записывается как: x(mod16)=13.
Шаг 3. Алгоритм решения.
1. Сначала считываем количество чисел N.
2. Создаём переменную-счётчик (например, count) и обнуляем её.
3. В цикле от 1 до N считываем очередное число x.
4. Проверяем составное условие: (x >= 256) and (x <= 4095) and (x % 16 == 13).
5. Если условие верно, увеличиваем счётчик на 1.
6. После завершения цикла выводим значение счётчика.
Пример реализации на языке Python:
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if 256 <= x <= 4095 and x % 16 == 13:
count += 1
print(count)
Проверим на примере из условия:
1. 173: 173<256 (не подходит).
2. 285: 256≤285≤4095 и 285(mod16)=13 (подходит, так как 285=17⋅16+13).
3. 893: 256≤893≤4095 и 893(mod16)=13 (подходит, так как 893=55⋅16+13).
4. 957: 256≤957≤4095 и 957(mod16)=13 (подходит, так как 957=59⋅16+13).
5. 4125: 4125>4095 (не подходит).
Итого: 3 числа.
Ответ: 3
Источник: ФИПИ