16

Ответ: Подсчёт чисел по записи в восьмеричной системе

ОГЭ · Информатика · Задание 16 · Системы счисления
ПовышеннаяФИПИ0F8FD5Развёрнутое решение≈ 10 минут
Что должно получиться

n = int(input())
count = 0
for _ in range(n):
x = int(input())
if 512 <= x <= 4095 and x % 8 == 3:
count += 1
print(count)

У этого задания официального ключа нет, поэтому ответ получен в разборе и с ключом не сверен. Перед тем как заучивать результат, пройдите выкладки — там видно, откуда взялось каждое число.

Условие

Напишите программу подсчёта количества элементов последовательности натуральных чисел, запись которых в восьмеричной системе счисления четырёхзначна и оканчивается на цифру 3.

На вход программе сначала подаётся количество элементов последовательности $N$ ($1 \leq N \leq 1000$), затем каждый элемент последовательности — в отдельной строке. Программа должна напечатать только одно число — количество искомых элементов.

Открыть задачу и решить самому

Где здесь ошибаются

Проверяют только последнюю цифру десятичной записи числа.

Используют границу 4096, хотя число 4096 имеет уже пять цифр в восьмеричной системе.

Забывают проверить, что запись числа является четырёхзначной.

Используют условие ИЛИ вместо одновременной проверки диапазона и остатка от деления.

Откуда взялся этот ответРазбор разложен на 4 шага: видно каждое преобразование и где теряется балл.
Открыть решение

Ответ к заданию 16 ОГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Поэтому рядом стоят выкладки: по ним видно, на чём ответ держится, и можно сверить свой ход решения, а не только результат.

Задача из темы «Системы счисления»: в ней 231 задача — у каждой есть ответ и разбор по шагам. Регистрация не нужна.