Задание №5 — Алгоритмы и программирование
У исполнителя Вычислитель две команды, которым присвоены номера:
1. умножь на 4
2. вычти 2
Первая из них увеличивает число на экране в 4 раза, вторая уменьшает его на 2.
Составьте алгоритм получения из числа 4 числа 28, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 11221 это алгоритм:
умножь на 4
умножь на 4
вычти 2
вычти 2
умножь на 4,
который преобразует число 1 в 48.)
Если таких алгоритмов более одного, то запишите любой из них.
Правильный ответ
21122
Пояснение
Решение. Для решения этой задачи нам нужно найти последовательность из не более чем 5 команд, которая превратит число в число . У нас есть две команды:
1. Умножить на ()
2. Вычесть ()
Попробуем действовать методом подбора, анализируя возможные шаги от начального числа . Нам нужно получить число , которое не является степенью четверки, значит, без вычитания не обойтись.
Шаг 1. Применим команду 2 (вычти 2):
(команда 2).
Теперь у нас число .
Шаг 2. Применим команду 1 (умножь на 4):
(команда 1).
Теперь у нас число .
Шаг 3. Применим команду 1 (умножь на 4):
(команда 1).
Теперь у нас число . Мы уже близко к цели ().
Шаг 4. Чтобы из получить , нужно вычесть . Так как команда 2 вычитает по , нам нужно применить её дважды.
Применим команду 2:
(команда 2).
Шаг 5. Применим команду 2 еще раз:
(команда 2).
Цель достигнута!
Проверим всю цепочку вычислений:
.
Последовательность команд: 2, 1, 1, 2, 2. Всего использовано 5 команд, что соответствует условию задачи.
Ответ: 21122
Источник: ФИПИ