Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 7. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
5 167 279 887 951 4119 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число последовательности и проверить, удовлетворяет ли оно двум условиям одновременно: его шестнадцатеричная запись должна быть трёхзначной и оканчиваться на цифру 7.
Шаг 1. Разбор условий.
1. Трёхзначность в шестнадцатеричной системе. Минимальное трёхзначное число в системе счисления с основанием 16 — это 10016, что в десятичной системе равно 162=256. Максимальное трёхзначное число — это FFF16, что равно 163−1=4095. Таким образом, число x должно находиться в диапазоне: 256≤x≤4095.
2. Окончание на цифру 7 в шестнадцатеричной системе. Последняя цифра числа в любой системе счисления — это остаток от деления этого числа на основание системы. Значит, нам нужно, чтобы остаток от деления числа на 16 был равен 7. Математически: x(mod16)=7.
Шаг 2. Алгоритм решения.
1. Сначала считываем количество чисел N.
2. Создаём переменную-счётчик (например, count) и обнуляем её.
3. В цикле от 1 до N считываем очередное число.
4. Проверяем выполнение условий: (x >= 256) and (x <= 4095) and (x % 16 == 7).
5. Если условия верны, увеличиваем счётчик на 1.
6. После завершения цикла выводим значение счётчика.
Шаг 3. Пример реализации на языке Python.
n = int(input())
count = 0
for i in range(n):
x = int(input())
if 256 <= x <= 4095 and x % 16 == 7:
count += 1
print(count)
Шаг 4. Проверка на примере.
Даны числа: 167,279,887,951,4119.
- 167: меньше 256 (двузначное в 16-ой системе). Не подходит.
- 279: 256≤279≤4095. Проверим остаток: 279/16=17 (ост. 7). Подходит (1).
- 887: 256≤887≤4095. Проверим остаток: 887/16=55 (ост. 7). Подходит (2).
- 951: 256≤951≤4095. Проверим остаток: 951/16=59 (ост. 7). Подходит (3).
- 4119: больше 4095 (четырёхзначное в 16-ой системе). Не подходит.
Итого: 3 числа.
Ответ: 3
Источник: ФИПИ