РУҚА
16

Жауабы: Подсчёт восьмеричных чисел

ОГЭ · Информатика · Тапсырма 16 · Бағдарламалау негіздері
КүрделіФИПИ78083DТолық шешім≈ 10 минут
Ненің шығуы керек

count = 0
while True:
n = int(input())
if n == 0:
break
if 8**3 <= n < 8**4 and n % 8 == 0:
count += 1
print(count)

У этого задания официального ключа нет, поэтому ответ получен в разборе және кілтпен салыстырылмаған. Нәтижені жаттамас бұрын, өтіңіз выкладки — там видно, откуда взялось каждое число.

Условие

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

Программа получает на вход натуральные числа. Количество введённых чисел неизвестно, но не превышает 1000. Последовательность чисел заканчивается числом 0 (0 — признак окончания ввода, не входит в последовательность).

Программа должна напечатать только одно число — количество искомых элементов последовательности.

Пример работы программы: при вводе чисел 480, 552, 888, 3024, 4120, 0 программа должна вывести 3.

Тапсырманы ашып, өзіңіз шешіңіз

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

Учитывают завершающий ноль как элемент последовательности.

Проверяют только делимость на 8, но не проверяют, что восьмеричная жазба является четырёхзначной.

Используют границу $8^4$ как допустимое значение, хотя число $8^4$ уже имеет пять цифр в восьмеричной системе.

Проверяют диапазон от $8^2$ до $8^3 - 1$, соответствующий трёхзначным восьмеричным числам.

Откуда взялся этот ответТалдау бөлінген 4 қадам: видно каждое преобразование и где теряется балл.
Шешімді ашу

Тапсырмаға жауап 16 ОГЭ, информатика

Официального ключа у этого задания нет, и ответ здесь получен в разборе. Сондықтан жанында есептеулер бар: олардан жауаптың неге негізделгені көрінеді, және тек қана нәтижемен емес, шешім барысын да салыстыруға болады.

Задача из темы «Бағдарламалау негіздері»: в ней 154 задачи — әрқайсысының жауабы мен қадамдық талдауы бар. Тіркелу қажет емес.