Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в шестнадцатеричной системе счисления трёхзначна и оканчивается на цифру 0. В ответе запишите количество искомых элементов.
Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
160 272 880 944 4112 0 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо проанализировать каждое введённое число на соответствие двум условиям: трёхзначность в шестнадцатеричной системе счисления и окончание на цифру 0 в этой же системе.
1. Разберём условие трёхзначности в шестнадцатеричной системе.
Минимальное трёхзначное число в шестнадцатеричной системе — это 10016. Переведём его в десятичную систему: 1⋅162+0⋅161+0⋅160=25610.
Максимальное трёхзначное число — это FFF16. Переведём его в десятичную систему: 15⋅162+15⋅161+15⋅160=409510.
Следовательно, число x является трёхзначным в шестнадцатеричной системе, если выполняется условие: 256≤x≤4095.
2. Разберём условие окончания на цифру 0.
Последняя цифра числа в любой системе счисления с основанием n — это остаток от деления этого числа на n. Чтобы число в шестнадцатеричной системе оканчивалось на 0, остаток от его деления на 16 должен быть равен 0. То есть число должно быть кратно 16.
3. Алгоритм решения:
— Создаём переменную-счётчик (например, count) и обнуляем её.
— Организуем цикл чтения чисел до тех пор, пока не будет введён 0.
— Для каждого введённого числа x проверяем составное условие: (x≥256) И (x≤4095) И (x(mod16)=0).
— Если условие истинно, увеличиваем count на 1.
— После окончания цикла выводим значение count.
4. Проверим пример из условия:
— 160: 160<256 (не подходит).
— 272: 256≤272≤4095 и 272(mod16)=0 (подходит, 27210=11016).
— 880: 256≤880≤4095 и 880(mod16)=0 (подходит, 88010=37016).
— 944: 256≤944≤4095 и 944(mod16)=0 (подходит, 94410=3B016′).
— 4112: 4112>4095 (не подходит).
Итого: 3 числа.
Ответ: 3
Источник: ФИПИ