РУҚА
22

Решение: Минимальное число по двоичной записи

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

Ниже на пяти языках программирования записан алгоритм. Получив на вход число $x$, этот алгоритм печатает два числа: $L$ и $M$. Укажите наименьшее число $x$, при вводе которого алгоритм печатает сначала 5, а потом 9.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

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

4 шага
1

На каждой итерации значение $x$ целочисленно делится на 2, поэтому цикл выполняется столько раз, сколько разрядов в двоичной записи исходного числа. Следовательно, $M=9$ означает, что число должно иметь 9 двоичных разрядов.

$$M=9$$
2

Увеличение $L$ происходит тогда и только тогда, когда очередной остаток от деления на 2 равен 1. Поэтому $L$ — количество единиц в двоичной записи числа.

$$L=5$$
3

Чтобы 9-разрядное число было наименьшим, его старший разряд должен быть единицей, а остальные четыре единицы нужно расположить как можно правее.

$$x=100001111_2$$

Переведём число в десятичную систему счисления.

$$x=2^8+2^3+2^2+2^1+2^0=256+8+4+2+1=271$$
Ответ
271
271
так ответ выглядит в бланке

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

Путать $L$ и $M$: $L$ считает единицы двоичной записи, а $M$ — её длину.

Расположить единицы слева и получить не минимальное, а большее число.

Забыть, что старший разряд 9-разрядного числа обязательно равен единице.

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

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

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

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