1. Главная
  2. Библиотека
  3. Программирование
  4. Алгоритм строит по натуральному числу N новое число R с...
Решение задачи на тему

Алгоритм строит по натуральному числу N новое число R следующим образом. 1. Строится двоичная запись числа N. 2. К полученной записи дописываются разряды. Если в числе N чётное количество единиц, слева дописывается '1', справа — '00'. Если в числе N

  • Программирование
  • ОсновыАлгоритмизацииИПрограммирования
  • СтруктурыИАлгоритмыОбработкиДанных
Алгоритм строит по натуральному числу N новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К полученной записи дописываются разряды. Если в числе N чётное количество единиц, слева дописывается '1', справа — '00'. Если в числе N

Условие:

реши аналитическиа потом на языке программирования пайтон. На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. К полученной записи дописываются разряды. Если в числе четное количество единиц,
слева дописывается 1 справа два нуля, если нечетное – слева две единицы.
Полученная таким образом запись является двоичной записью искомого числа R.
Пример. Дано число N = 13. Алгоритм работает следующим образом:
1. Двоичная запись числа N: 1101.
2. Число нечетное, следовательно, слева дописываем две единицы слева – 11 + 1101 = 111101.
3. На экран выводится число 1111012 = 61.
В результате работы автомата на экране появилось число, не меньшее 412. Для какого наименьшего значения N данная ситуация возможна?

Решение:

Запишем условие задачи своими словами: • Имеется натуральное число N. Его двоичная запись обозначим как S, длина которой равна L бит (т.е. L = ⌊log₂N⌋ + 1). • Если в двоичной записи N количество единиц чётно, то формируется новая запись, полученная так: к началу строки S дописывается символ 1, а в конец – 00. • Если количество единиц нечётно, то к началу строки S дописываются два символа 11 (с правой стороны никаких дополнений). • Полученная запись трактуется как двоичное представление нового числа R. • Найти наименьшее N, для которого R ≥ 412. Найдем аналитически. ─────────────────...

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет