Задание 16 ОГЭ по информатике · B88012
ПовышеннаяКЭС 3.2
Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления трёхзначна и оканчивается на цифру 4. В ответе запишите количество искомых элементов.
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
На вход программе сначала подаётся количество элементов последовательности N (1 ≤ N ≤ 1000), затем каждый элемент последовательности в отдельной строке.
Программа должна напечатать только одно число – количество искомых элементов последовательности.
Пример работы программы
| Входные данные | Выходные данные |
|---|---|
| 5 36 164 476 508 580 | 3 |
Показать ответ
n = int(input()); count = 0; for _ in range(n):; x = int(input()); if 64 <= x < 512 and x % 8 == 4:; count += 1; print(count)
Подсказки (3)
- Как определить последнюю цифру записи числа в восьмеричной системе?
- Последняя восьмеричная цифра равна остатку от деления числа на 8. Трёхзначные восьмеричные числа лежат в диапазоне от 82 до 83−1.
- Для каждого числа проверьте условия 64≤x<512 и x mod 8=4, увеличивая счётчик при выполнении обоих условий.
Решение
1. Восьмеричная запись является трёхзначной, если число не меньше 82=64 и меньше 83=512.
64≤x<512
2. Последняя цифра восьмеричной записи определяется остатком от деления числа на 8. Для цифры 4 этот остаток должен быть равен 4.
x mod 8=4
3. Последовательно обрабатываем все N чисел и увеличиваем счётчик, если оба условия выполнены.
count=count+1
4. Один из вариантов программы:
64≤x<512
2. Последняя цифра восьмеричной записи определяется остатком от деления числа на 8. Для цифры 4 этот остаток должен быть равен 4.
x mod 8=4
3. Последовательно обрабатываем все N чисел и увеличиваем счётчик, если оба условия выполнены.
count=count+1
4. Один из вариантов программы:
n = int(input())
count = 0
for _ in range(n):
x = int(input())
if 64 <= x < 512 and x % 8 == 4:
count += 1
print(count)Частые ошибки
- Проверяют последнюю цифру десятичной записи, а не остаток от деления на 8.
- Используют границы 64≤x≤512, хотя число 512 записывается в восьмеричной системе как четырёхзначное.
- Забывают обработать все N элементов последовательности.
- Выводят сами подходящие числа вместо их количества.
Источник: Открытый банк ФИПИ
Похожие задания
16Напишите программу, которая в последовательности целых чисел вычисляет сумму всех чисел, которые кратны 6 или…Задания открытого банка ФИПИ · AFEFD116Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · B0B1DA16Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · B1D01316Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в…Задания открытого банка ФИПИ · B6EBF216Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 8.…Задания открытого банка ФИПИ · B8BD2716Напишите программу, которая в последовательности натуральных десятичных чисел определяет наибольший элемент…Задания открытого банка ФИПИ · B8CB8B16Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 3 и…Задания открытого банка ФИПИ · B8D5FC16Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, оканчивающихся на…Задания открытого банка ФИПИ · B92B25
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ОГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.