Создавать и выполнять программы на универсальном языке программирования · 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
Напишите программу, которая в последовательности натуральных десятичных чисел определяет среднее арифметическое элементов, запись которых в системе сч…
Программирование
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления трёхзначна и оканчивается на цифру 2. В ответе запишите количество искомых элементов.
Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
34 162 474 506 578 0 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо последовательно считывать числа до тех пор, пока не встретим 0, и проверять каждое число на соответствие двум условиям в восьмеричной системе счисления.
Шаг 1. Анализ условий.
Число в восьмеричной системе счисления должно быть трёхзначным и оканчиваться на 2.
1. Чтобы число было трёхзначным в восьмеричной системе, оно должно находиться в диапазоне от 1008 до 7778. Переведём эти границы в десятичную систему:
Нижняя граница: 1008=1⋅82+0⋅81+0⋅80=64.
Верхняя граница: 7778=7⋅82+7⋅81+7⋅80=448+56+7=511.
Следовательно, число x должно удовлетворять условию: 64≤x≤511.
2. Чтобы число в восьмеричной системе оканчивалось на 2, остаток от его деления на 8 должен быть равен 2. В программировании это записывается как x(mod8)=2.
Шаг 2. Алгоритм решения.
1. Создаём переменную-счётчик (например, count) и обнуляем её.
2. Организуем цикл чтения чисел. Так как количество чисел заранее неизвестно, используем цикл while, который прервётся при вводе 0.
3. Внутри цикла проверяем каждое введённое число x:
Если (x≥64) И (x≤511) И (x(mod8)=2), то увеличиваем счётчик на 1.
4. После окончания цикла выводим значение счётчика.
Шаг 3. Проверка на примере.
- Число 34: 34<64 (не подходит).
- Число 162: 64≤162≤511 — верно; 162(mod8)=2 (162=20⋅8+2) — верно. Подходит.
- Число 474: 64≤474≤511 — верно; 474(mod8)=2 (474=59⋅8+2) — верно. Подходит.
- Число 506: 64≤506≤511 — верно; 506(mod8)=2 (506=63⋅8+2) — верно. Подходит.
- Число 578: 578>511 (не подходит).
Итого: 3 числа.
Пример реализации на языке Python:
count = 0
x = int(input())
while x != 0:
if 64 <= x <= 511 and x % 8 == 2:
count += 1
x = int(input())
print(count)
Ответ: 3
Источник: ФИПИ