У исполнителя Удвоитель две команды, которым присвоены номера: 1. умножь на 2 2. прибавь 3 Первая из них увеличивает число на экране в 2 раза, вторая прибавляет к числу 3. Составьте алгоритм получения из числа 4 числа 40, содержащий не более 5 команд. В ответе запишите только номера команд. (Например, 12211 – это алгоритм: умножь на 2 прибавь 3 прибавь 3 умножь на 2 умножь на 2 который преобразует число 1 в 32.) Если таких алгоритмов более одного, то запишите любой из них.
Давайте решим задачу пошагово.
Задача:
Изначально число равно 4, нужно получить число 40, используя не более 5 команд.
Команды:
1 — умножь на 2
2 — прибавь 3
Нам нужно составить последовательность команд (номер команды, например 12211), которая преобразует 4 в 40 за не более чем 5 шагов.
**Подход**:
Лучше двигаться обратно — от 40 к 4, применяя обратные операции.
Обратные операции:
- Обратная умножению на 2 — деление на 2 (если деление возможно целочисленно)
- Обратная прибавке 3 — вычитание 3
Результат:
Работаем назад от 40, чтобы дойти до 4, запишем последовательности команд в обратном порядке, затем их инвертируем.
---
### Шаги в обратную сторону:
1. Начинаем со 40.
2. Посмотрим, как получить 40 из предыдущего числа:
- Если число делится на 2, то предположим, что перед ним было число, умноженное на 2.
\( x \to 2x \), тогда обратно: \( 40 \to 20 \) (используем команду 1 — деление на 2).
— 40 делится на 2, значит предыдущее число — 20.
3. Продолжаем:
- 20 делится на 2? Нет, 20 делится, да, на 2? **Да**, 20 делится на 2, значит предыдущим числом было 10 — команда 1 (деление на 2).
— После 20 — 10.
4. Далее:
- 10 делится на 2? Да, делит на 2? Нет, 10 делится? Нет, оно не делится на 2 без остатка, значит предположим, что перед этим было число, прибавили 3, так как при обратной операции необходимо вычесть 3.
— 10 не делится на 2, значит:
— Обратная операция — вычитаем 3 (команда 2), число до предыдущего — 10 – 3 = 7
— Значит, перед 10 было число 7, и операция — +3.
5. Продолжаем:
- После 7:
— Проверим, как получить 7?
— Возможно, перед ним было число, которое прибавили 3 — 7 – 3 = 4.
— 4 — исходное число, совпадает.
Итак, мы достигли исходное число 4.
События в обратном порядке:
- 40 — команда 1 (деление на 2) — предыдущий: 20
- 20 — команда 1 — предыдущий: 10
- 10 — команда 2 (вычитаем 3) — предыдущий: 7
- 7 — команда 2 (вычитаем 3) — предыдущий: 4
Обратный порядок команд: 1 1 2 2
Теперь запишем их в исходном порядке (прямые команды от 4 до 40):
- Первое действие: из 4 получаем 7 — команда 2
- Второе: из 7 — 10 — команда 2
- Третье: из 10 — 20 — команда 1
- Четвертое: из 20 — 40 — команда 1
Итоговая последовательность команд: **22 11**
Ответ: **2211** — это последовательность команд, преобразующая число 4 в 40 за 4 шага (не превышая 5).
---
**Ответ:**
**2211**