Присоединиться

11 класс·средний уровень

Какое наибольшее число, меньшее 90, может появиться на экране в

Условие

На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.1. Строится двоичная запись числа N.2. Складываются все цифры полученной двоичной записи. В конец записи (справа) дописывается остаток от деления суммы на 2.3. Предыдущий пункт повторяется для записи с добавленной цифрой.4. Результат переводится в десятичную систему и выводится на экран. Пример. Дано число N = 13. Алгоритм работает следующим образом:1. Двоичная запись числа N: 1101.2. Сумма цифр двоичной записи 3, остаток от деления на 2 равен 1, новая запись: 11011.3. Сумма цифр полученной записи — 4, остаток от деления на 2 равен 0, новая запись: 110110.4. На экран выводится число 54. Какое наибольшее число, меньшее 90, может появиться на экране в результате работы автомата?

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

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

  1. Как рассуждать

    Решение. Рассмотрим числа, меньшие 90, и определим наибольшее из них, которое может являться результатом работы алгоритма:89₁₀ = 101 1001₂ — не может являться результатом работы алгоритма.88₁₀ = 101 1000₂ — не может являться результатом работы алгоритма.87₁₀ = 101 0111₂ — не может являться результатом работы алгоритма.86₁₀ = 101 0110₂ — может являться результатом работы алгоритма.

    Таким образом, ответ —

Осталось ещё 3 шага

  1. Приведём другое решение на языке Python. for…

  2. s += str(s.count("1") %…

  3. # перевод в десятичную систему if r <…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Анализ и построение алгоритмов для исполнителей»

Какое наибольшее число, меньшее 90, может появиться на экране в — решение с объяснением | Lom Ai