У исполнителя Квадратор две команды, которым присвоены номера: 1. возведи в квадрат,
2. прибавь 1. Первая из них возводит число на экране в квадрат, вторая увеличивает его на 1. Запишите порядок команд в программе, которая преобразует число 1 в число 25 и содержит не более 4 команд. Указывайте лишь номера команд. Алгоритм поясните.
2121
Объяснение:
ответ можно угадать:
(2) 1 + 1 = 2
(1) 2² = 4
(2) 4 + 1 = 5
(1) 5² = 25
Если нужны подробности (заодно мы поймем, что этот ответ единственный), читайте дальше.
Идем с конца.
Если последняя операция - прибавление 1, то на предыдущем шаге получится 24, это не квадрат, поэтому на предыдущем шаге тоже было 1, и на еще двух тоже. Итого, за 4 операции мы получим только 21, это слишком много.
Тогда последняя операция - возведение в квадрат, на предыдущем шаге получилось 5.
5 - не квадрат, так что на этом шаге прибавляли 1, было 4.
Если 4 получили прибавлением единицы, то на предыдущем шаге было получено 3, это не квадрат, поэтому и первый шаг был прибавлением 1, и исходное число - 2, не подходит. Значит, 4 получили возведением в квадрат двойки.
2 - не квадрат, так что на этом шаге прибавляли 1, было 1.