МУМ5 → ОГЭ → Информатика → разборы → демоверсия 2027 → № 16

Задание 16 демоверсии ОГЭ 2027 по информатике

Программа на языке программирования. Сначала напиши свой ответ, потом сравни с образцом.

Задание 16

Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и оканчивается на цифру 5. В ответе запишите количество искомых элементов. Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Программа должна напечатать только одно число – количество искомых элементов последовательности.

Пример работы программы

Входные данные

485
557
893
3029
4125
0

Выходные данные

3

Источник: ФИПИ, проект демоверсии ОГЭ 2027, с. 17

Образец ответа
count = 0
x = int(input())
while x != 0:
    # четыре восьмеричные цифры: от 1000₈ = 512 до 7777₈ = 4095
    if 512 <= x <= 4095 and x % 8 == 5:
        count += 1
    x = int(input())
print(count)

Программа читает числа по одному, пока не встретит 0; сам ноль не проверяется. Для каждого числа она проверяет диапазон (четыре цифры в восьмеричной системе) и последнюю восьмеричную цифру — остаток от деления на 8.

Тесты: 325, 541, 1075, 4229, 0 → 1 (подходит только 541); 377, 565, 853, 1141, 4309, 0 → 3; 535, 1555, 2775, 0 → 0.

Как оценивают · максимум 2
  • Верное решение до 2

    2 балла — программа на любом языке даёт верный ответ на всех трёх проверочных тестах ФИПИ.

  • Ошибка на одном тесте до 1

    1 балл — программа ошибается ровно на одном тесте из трёх, например из-за неточной границы диапазона.

  • Не соответствует критериям до 0

    0 баллов — неверных ответов на тестах больше одного.

Как выполнять
  1. Восьмеричная запись четырёхзначна, если 83≤x<848^3 \le x < 8^4, то есть 512≤x≤4095512 \le x \le 4095.

  2. Последняя цифра восьмеричной записи — это остаток от деления на 8. Нужно, чтобы x % 8 == 5.

  3. Читаем числа в цикле, пока не встретится 0, и считаем те, что подходят под оба условия.

  4. Проверка на примере: 485 меньше 512; 557, 893 и 3029 дают остаток 5; 4125 больше 4095. Итого 3.