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