В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
Рената515
Рената515
25.11.2022 16:41 •  Информатика

1. Из числа N вычитается остаток от деления N на 4. 2. Строится двоичная запись полученного результата.
3. К этой записи дописываются справа еще два разряда по следующему правилу:
а) Складываются все цифры построенной двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа.
б) Те же действия.

Укажите минимальное число R, больше 56, которое может являться результатом работы данного алгоритма.

P.S. Бьюсь уже часа два. По идеи, если не брать первое действие, то подходят в ответ 58-111010 / 60-111100 / 66-1000010 и т.д. ответ 66, но почему именно он, а не 58 или 60 например, я не знаю...(

Ответ:
Matroyshka
Matroyshka
28.08.2021 14:49

Такие задания со сложными условиями легче всего решать программой на питоне:

for n in range(1, 10000000):  # Грубый перебор

   n -= n % 4  # 1. Из числа N вычитается остаток от деления N на 4.

   n = bin(n)[2:]  # 2. Строится двоичная запись полученного результата. + срез "0b"

   n = n + str(n.count('1') % 2)  # 3. a)

   n = n + str(n.count('1') % 2)  # 3. б)

   r = int(n, 2)  # Перевод в 10 с.с.

   if r > 56:

       print(r)  

       break

ответ: 66

Если всё же рассуждать, то опять перебором:

Возьмём, например, число 5 и выполним алгоритм:

1. 5 - 5 % 4 = 4

2. 4 -> 100

3. a) 1001

   б) 10010

R = 18, очень мало

Возьмём, например, 14:

1. 12  

2. 1100

3. a) 11000

   б) 110000

R = 48, маловато, но близко

Возьмём, например, 15:

1. 12

Видим, будет тоже, что и 14

Возьмём, например, 16:

1. 16

2. 10000

3. a) 100001

   б) 1000010

R = 66, то, что нам нужно.

ответ: 66

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?