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

13 Янв 2022 в 19:40
298 +1
0
Ответы
1

Для решения этой задачи мы можем написать код на Python, который будет последовательно выполнять
указанные шаги алгоритма и проверять результат.

def binary_to_decimal(binary):
decimal = 0
for i in range(len(binary)):
decimal += int(binary[i]) * 2**(len(binary)-1-i)
return decimal
def new_number(N):
binary = bin(N)[2:]
if '0' not in binary:
return -1
idx = binary.rindex('0')
new_binary = binary[:idx] + binary[idx+1:idx+3] + binary[idx:idx+1]
new_binary = new_binary[::-1]
result = binary_to_decimal(new_binary)
return result
# Находим максимальное значение N, при котором результат работы алгоритма будет равен 119
max_N = 0
result = -1
for N in range(2, 1000):
res = new_number(N)
if res == 119:
max_N = N
result = res
print("Максимальное значение N:", max_N)

После запуска данного кода мы получаем, что максимальное значение N, при котором результат работы
алгоритма будет равен 119, составляет 595.

Максимальное значение N: 595
16 Апр в 19:49
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 90 246 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир