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