Исполнитель КАЛЬКУЛЯТОР имеет только две команды, которым присвоены номера:
1. Умножь на 2
2. Вычти 1
Выполняя команду номер 1, КАЛЬКУЛЯТОР умножает число на экране на 2, а выполняя команду номер 2, вычитает из числа на экране 1. Напишите программу, содержащую не более 4 команд, которая из числа 7 получает число 52.
1211
Объяснение:
Команды:
1. Умножь на 2
2. Вычти 1
из числа 7 получить число 52
Заменим команды на обратные.
Команды:
1. Раздели на 2
2. Прибавь 1
И пойдём от большего числа 52 к меньшему числу 7
Если число делится нацело, то применяем первую команду, если нет, то вторую
52 / 2 = 26 (1)
26 / 2 = 13 (1)
13 + 1 = 14 (2)
14 / 2 = 7 (1)
Т.к. мы шли в обратном порядке, команды надо перевернуть (снизу вверх).
Программа 1211
Проведём проверку, вернувшись к начальным командам и пойдём от меньшего числа 7 к большему 52
7 * 2 = 14 (1)
14 - 1 = 13 (2)
13 * 2 = 26 (1)
26 * 2 = 52 (1)