У исполнителя Умножитель две команды, которым присвоены номера:
1. вычти 1
2. умножь на 2
Первая из них уменьшает число на экране на 1, вторая удваивает его.
Составьте алгоритм получения из числа 2 числа 11, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 12121 –– это алгоритм:
вычти 1
умножь на 2
вычти 1
умножь на 2
вычти 1,
который преобразует число 5 в 13.)
Если таких алгоритмов более одного, то запишите любой из них.
РЕШЕНИЕ
Будем идти от числа 11 к числу 2 применяя противоположные команды, так мы будем видеть когда промежуточный результат можно без остатка поделить на 2.
Тогда мы имеем команды:
1. Прибавь 1
2. Раздели на 2
1) 11 нельзя без остатка поделить на 2, прибавим:
11 + 1 = 12
Команда 1
2) 12 можно без остатка поделить на 2:
12 / 2 = 6
Команда 2
3) 6 можно без остатка поделить на 2:
6 / 2 = 3
Команда 2
4) 3 нельзя без остатка поделить на 2, прибавим:
3 + 1 = 4
Команда 1
5) 4 можно без остатка поделить на 2:
4 / 2 = 2 - искомый результат
Команда 2
Переписываем номера команд снизу вверх , так как шли в обратном порядке - 21221 (не больше 5 команд, как и необходимо по условию)
ОТВЕТ 21221