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