Задание №5 — Алгоритмы и программирование
У исполнителя Вычислитель две команды, которым присвоены номера:
1. вычти 3
2. умножь на 5
Первая из них уменьшает число на экране на 3, вторая увеличивает его
в 5 раз. Составьте алгоритм получения из числа 3 числа 30, содержащий
не более пяти команд. В ответе запишите только номера команд.
(Например, 21211 – это алгоритм:
умножь на пять
вычти три
умножь на пять
вычти три
вычти три,
который преобразует число 3 в число 54.)
Если таких алгоритмов более одного, то запишите любой из них.
Правильный ответ
21112
Пояснение
Решение.
Нам необходимо составить алгоритм для исполнителя «Вычислитель», который превратит число в число за ограниченное количество шагов (не более пяти). У нас есть две команды:
1. вычти 3 (действие: )
2. умножь на 5 (действие: )
Будем рассуждать логически, двигаясь от начального числа к конечному числу , перебирая возможные варианты команд на каждом шаге.
Шаг 1. У нас есть число .
Если мы применим команду 1 (), то из нуля умножением на мы не сможем получить положительное число . Значит, первая команда должна быть №2.
Применяем команду 2: .
Промежуточный результат: 15. Алгоритм: 2.
Шаг 2. У нас есть число .
Если мы снова умножим на , то получим . Это число значительно больше итогового (), и нам придется многократно вычитать , что может не уложиться в лимит 5 команд. Попробуем сначала вычесть .
Применяем команду 1: .
Промежуточный результат: 12. Алгоритм: 21.
Шаг 3. У нас есть число .
Если мы умножим на , получим . Если вычтем , получим . Попробуем вычесть .
Применяем команду 1: .
Промежуточный результат: 9. Алгоритм: 211.
Шаг 4. У нас есть число .
Попробуем снова вычесть .
Применяем команду 1: .
Промежуточный результат: 6. Алгоритм: 2111.
Шаг 5. У нас есть число .
Нам нужно получить . Заметим, что . Это в точности соответствует команде №2.
Применяем команду 2: .
Конечный результат: 30. Алгоритм: 21112.
Проверим полученную последовательность команд 21112:
1) (команда 2)
2) (команда 1)
3) (команда 1)
4) (команда 1)
5) (команда 2)
Алгоритм состоит из 5 команд и приводит к нужному числу.
Ответ: 21112
Источник: ФИПИ