OpenFIPI 2.0

105

5

oge_F7C9D4

У исполнителя Вычислитель две команды, которым присвоены номера:

1. умножь на 3

2. вычти 2

Первая из них увеличивает число на экране в 3 раза, вторая уменьшает его на 2.

Составьте алгоритм получения из числа 1 числа 23, содержащий не более 5 команд. В ответе запишите только номера команд.

(Например, 11221  это алгоритм:

умножь на 3

умножь на 3

вычти 2

вычти 2

умножь на 3,

который преобразует число 1 в 15.)

Если таких алгоритмов более одного, то запишите любой из них.

 

11122

Решим обратным ходом.

**Начальное:** 1 → **Конечное:** 23  
**Команды:**  
1. умножь на 3  
2. вычти 2  

Обратные команды (от 23 к 1):  
- разделить на 3 (обратная к 1), только если число делится на 3  
- прибавить 2 (обратная к 2)

---

23 не делится на 3 → последняя команда 2 (вычти 2) → предыдущее 25 (23 + 2 = 25).  
25 не делится на 3 → предыдущее 27 (25 + 2 = 27).  
27 делится на 3 → 27 / 3 = 9 (обратная 1).  
9 делится на 3 → 9 / 3 = 3 (обратная 1).  
3 делится на 3 → 3 / 3 = 1 (обратная 1).  

Обратный путь: 23 ← 25 ← 27 ← 9 ← 3 ← 1.  
Обратные команды:  
23 → 25 (2)  
25 → 27 (2)  
27 → 9 (1)  
9 → 3 (1)  
3 → 1 (1)  

Прямой путь (от 1 к 23) — в обратном порядке команд:  
1 → 3 (1)  
3 → 9 (1)  
9 → 27 (1)  
27 → 25 (2)  
25 → 23 (2)  

Команды: 1, 1, 1, 2, 2 → **11122**.

Проверка:  
1 ×3 = 3 (1)  
3 ×3 = 9 (1)  
9 ×3 = 27 (1)  
27 – 2 = 25 (2)  
25 – 2 = 23 (2) ✅

**Ответ: 11122**

Просмотреть отправленные ответы oge_F7C9D4