РУҚА
22

Решение: Анализ алгоритма в восьмеричной системе

ЕГЭ · Информатика · Задание 22 · Алгоритмы и исполнители
ПовышеннаяФИПИ554FA4Короткий ответ≈ 5 минутРазбор в 4 шагаОтвет сверен с ключом
Условие

Получив на вход натуральное десятичное число $x$, алгоритм печатает два числа: $L$ и $M$. Укажите наибольшее число $x$, при вводе которого алгоритм печатает сначала $2$, а потом $3$.

Python
1x = int(input())
2L = 1
3M = 0
4while x > 0:
5    M = M + 1
6    if x % 2 == 0:
7        L = L * (x % 8)
8    x = x // 8
9print(L)
10print(M)
Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

4 шага
1

Каждое выполнение цикла увеличивает $M$ на единицу, а затем заменяет $x$ на целую часть от деления на $8$. Поэтому $M$ равно количеству цифр исходного числа в восьмеричной системе. При $M = 3$ число имеет вид трёхзначного восьмеричного числа.

$$x = (abc)_8$$
2

На каждой итерации проверяется чётность текущего $x$. Она совпадает с чётностью очередной цифры восьмеричной записи. Для чётной цифры множитель равен этой цифре, а нечётные цифры в произведение не входят.

3

Чтобы получить $L = 2$, произведение всех чётных цифр должно быть равно $2$. Значит, одна из цифр равна $2$, а две остальные должны быть нечётными. Для максимального числа цифру $2$ ставим в разряд единиц, а в остальные разряды ставим наибольшие нечётные цифры $7$.

Получаем $x = (772)_8$. Переводим число в десятичную систему:

$$x = 7 \cdot 8^2 + 7 \cdot 8 + 2 = 448 + 56 + 2 = 506$$
Ответ
506
506
так ответ выглядит в бланке

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

Считать, что $M$ равно количеству чётных цифр, хотя оно равно числу итераций цикла.

Размещать цифру $2$ не в младшем, а в старшем разряде.

Забывать перевести найденное восьмеричное число $772_8$ в десятичную систему.

Закрепить приёмВ теме «Алгоритмы и исполнители» ещё 431 задача — с ответом и таким же разбором.
Тренироваться

Как решать задание 22 ЕГЭ, информатика

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

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