Создавать и выполнять программы на универсальном языке программирования · 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. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
Входные данные | Выходные данные |
|---|---|
5 480 552 888 3024 4120 | 3 |
Решение
Решение.
Для решения этой задачи нам необходимо проанализировать каждое число из последовательности и проверить, удовлетворяет ли оно двум условиям одновременно:
1. Запись числа в восьмеричной системе счисления является четырёхзначной.
2. Запись числа в восьмеричной системе счисления оканчивается на цифру 0.
Разберём эти условия с точки зрения математики:
Шаг 1. Условие четырёхзначности в восьмеричной системе.
Минимальное четырёхзначное число в восьмеричной системе — это 10008. Переведём его в десятичную систему:
1⋅83+0⋅82+0⋅81+0⋅80=512.
Максимальное четырёхзначное число в восьмеричной системе — это 77778. Следующее за ним число — 100008, которое равно 84=4096.
Следовательно, число x является четырёхзначным в восьмеричной системе, если оно находится в диапазоне:
512≤x<4096.
Шаг 2. Условие окончания на цифру 0.
Последняя цифра числа в любой системе счисления с основанием q — это остаток от деления этого числа на q.
Чтобы число в восьмеричной системе оканчивалось на 0, остаток от его деления на 8 должен быть равен 0. То есть число должно нацело делиться на 8.
Математически: x(mod8)=0.
Шаг 3. Алгоритм решения.
1. Сначала считываем количество чисел N.
2. Вводим переменную-счётчик (например, count) и обнуляем её.
3. В цикле от 1 до N считываем очередное число x.
4. Проверяем составное условие: (x≥512) И (x<4096) И (x(mod8)=0).
5. Если условие выполняется, увеличиваем count на 1.
6. После завершения цикла выводим значение count.
Шаг 4. Проверка на примере.
Даны числа: 480, 552, 888, 3024, 4120.
1. 480: меньше 512. Не подходит.
2. 552: 512≤552<4096. Проверяем деление на 8: 552/8=69 (остаток 0). Подходит (1).
3. 888: 512≤888<4096. Проверяем деление на 8: 888/8=111 (остаток 0). Подходит (2).
4. 3024: 512≤3024<4096. Проверяем деление на 8: 3024/8=378 (остаток 0). Подходит (3).
5. 4120: больше 4096. Не подходит.
Итого: 3 числа.
Ответ: 3
Источник: ФИПИ