Предмет: Информатика, автор: maratayupov0

Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом:
1) Строится двоичная запись числа N.
2) Подсчитывается количество нулей и единиц в полученной записи. Если их количество одинаково, в конец записи добавляется её последняя цифра. В противном случае в конец записи добавляется цифра, которая встречается реже.
3) Шаг 2 повторяется ещё два раза.
4) Результат переводится в десятичную систему счисления.
При каком наименьшем исходном числе N > 65 в результате работы алгоритма получится число, кратное 4?

Ответы

Автор ответа: badnsnus
0

Ответ:284

Объяснение:

for i in range(65, 10000):

   n = i

   x = bin(n)[2:]

   for i in range(2):

       if x.count('0') == x.count('1'):

           x += x[-1]

       else:

           x += '0' if x.count('0') < x.count('1') else '1'

   r = int(x, 2)

   if r % 4 == 0:

       print(r)

       break

Похожие вопросы
Предмет: Русский язык, автор: dilaraismailova06
Предмет: Математика, автор: aiko3442