Помогите! Питон. Исполнитель “Раздвоитель” преобразует натуральные числа. У него есть две...

0 голосов
1.5k просмотров

Помогите! Питон. Исполнитель “Раздвоитель” преобразует натуральные числа. У него есть две команды: “Вычесть 1” и “Разделить на 2”, первая команда уменьшает число на 1, вторая команда уменьшает число в два раза, если оно чётное, иначе происходит ошибка. Дано два натуральных числа A и B (A>B). Напишите алгоритм для Развоителя, который преобразует число A в число B и при этом содержит минимальное число команд. Команды алгоритма нужно выводить по одной в строке, первая команда обозначается, как -1, вторая команда как :2.


Информатика (24 баллов) | 1.5k просмотров
Дан 1 ответ
0 голосов

#Python 3.6.0

a, b = int(input()), int(input())
while a!=b:
  if (a//2>=b) and (a%2 == 0):
    print ('Разделить на 2')
    a//=2
  else:
    print ('Вычесть 1')
    a-=1

(3.8k баллов)
0

P.s. Делал в блокноте, так что проверь)

0

спасибо