OpenFIPI 2.0
105
5
oge_ED51C5
У исполнителя Вычислитель две команды, которым присвоены номера:
1. прибавь 3
2. умножь на 3
Первая из них увеличивает число на экране на 3, вторая утраивает его.
Составьте алгоритм получения из числа 1 числа 48, содержащий не более пяти команд. В ответе запишите только номера команд.
(Например, 21211 – это алгоритм:
умножь на 3
прибавь 3
умножь на 3
прибавь 3
прибавь 3,
который преобразует число 2 в число 33.)
Если таких алгоритмов более одного, то запишите любой из них.
12121
Решим обратным ходом.
**Начальное:** 1 → **Конечное:** 48
**Команды:**
1. прибавь 3
2. умножь на 3
Обратные команды (от 48 к 1):
- вычти 3 (обратная к 1)
- раздели на 3 (обратная к 2), только если число делится на 3.
---
48 делится на 3 → 48 / 3 = 16 (обратная 2).
16 – 3 = 13 (обратная 1).
13 – 3 = 10 (обратная 1).
10 – 3 = 7 (обратная 1).
7 – 3 = 4 (обратная 1).
4 – 3 = 1 (обратная 1).
Обратный путь: 48 ← 16 ← 13 ← 10 ← 7 ← 4 ← 1 — это 6 шагов (лишний).
Попробуем иначе:
48 – 3 = 45 (обратная 1).
45 / 3 = 15 (обратная 2).
15 – 3 = 12 (обратная 1).
12 / 3 = 4 (обратная 2).
4 – 3 = 1 (обратная 1).
Обратный путь: 48 ← 45 ← 15 ← 12 ← 4 ← 1.
Обратные команды:
48 → 45 (1)
45 → 15 (2)
15 → 12 (1)
12 → 4 (2)
4 → 1 (1)
Прямой путь (от 1 к 48) — в обратном порядке команд:
1 → 4 (1)
4 → 12 (2)
12 → 15 (1)
15 → 45 (2)
45 → 48 (1)
Команды: 1, 2, 1, 2, 1 → **12121**.
Проверка:
1 +3 = 4 (1)
4 ×3 = 12 (2)
12 +3 = 15 (1)
15 ×3 = 45 (2)
45 +3 = 48 (1) ✅
**Ответ: 12121**
Просмотреть отправленные ответы oge_ED51C5