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