Контрольные задания > Задание 7: У исполнителя Квадратор две команды:
1. Возведи в квадрат
2. Вычти 1
Составьте алгоритм получения из числа 5 числа 64, содержащий не более 5 команд.
Вопрос:
Задание 7: У исполнителя Квадратор две команды:
1. Возведи в квадрат
2. Вычти 1
Составьте алгоритм получения из числа 5 числа 64, содержащий не более 5 команд.
Ответ:
Чтобы получить из числа 5 число 64, можно воспользоваться следующей последовательностью команд:
1. Возвести в квадрат: 5^2 = 25
2. Вычесть 1: 25 - 1 = 24
3. Вычесть 1: 24 - 1 = 23
4. Возвести в квадрат: 23^2 = 529 (слишком много)
Попробуем другой путь:
1. Вычесть 1: 5 - 1 = 4
2. Возвести в квадрат: 4^2 = 16
3. Возвести в квадрат: 16^2 = 256 (тоже многовато)
Попробуем ещё:
1. Возвести в квадрат: 5^2 = 25
2. Вычесть 1: 25 - 1 = 24
3. Вычесть 1: 24 - 1 = 23
Похоже, что возводить в квадрат сразу невыгодно. Попробуем сразу вычитать:
1. Вычесть 1: 5-1 = 4
2. Вычесть 1: 4-1 = 3
3. Вычесть 1: 3-1 = 2
4. Вычесть 1: 2-1 = 1
Дальше бессмысленно. Попробуем комбинацию:
1. Вычесть 1: 5 - 1 = 4
2. Возвести в квадрат: 4^2 = 16
3. Вычесть 1: 16 - 1 = 15
4. Вычесть 1: 15 - 1 = 14
5. Вычесть 1: 14 - 1 = 13
И так не получается. Но можно же еще раз возвести в квадрат, но нужное число не выходит, продолжаем дальше.
Попробуем следующее:
1. Возвести в квадрат: 5^2 = 25
2. Вычесть 1: 25 - 1 = 24
3. Вычесть 1: 24 - 1 = 23
4. Вычесть 1: 23 - 1 = 22
5. Вычесть 1: 22 - 1 = 21
И это тоже далеко от 64. Хм... Попробуем начать с 8:
Чтобы получить 64, нужно чтобы было число 8 и возвести в квадрат. Как получить из 5 число 8?
1. Вычесть 1: 5 - 1 = 4
2. Вычесть 1: 4 - 1 = 3
3. Вычесть 1: 3 - 1 = 2
Не туда. Снова попробуем пойти другим путем. Нам нужно получить 64. 64 = 8^2
1. Возвести в квадрат: 5^2 = 25
2. Вычесть 1: 25 - 1 = 24
3. Вычесть 1: 24 - 1 = 23
4. Вычесть 1: 23 - 1 = 22
5. ...
И это не работает.
Можно заметить, что 64 = 8*8. Если бы у нас было 8, то мы могли бы возвести в квадрат. Попробуем получить 8:
5 + 3 = 8, то есть, нам нужно получить 3 из имеющихся операций. Это можно сделать только вычитанием 1. Но в нашем распоряжении только 5 команд.
Нам нужно получить число 8, чтобы затем возвести его в квадрат. Как это сделать?
Начнём с числа 5.
Возвести в квадрат: 5^2 = 25. Нам нужно уменьшить это число до 8.
25 - 8 = 17. Значит, нам нужно 17 раз вычесть 1.
1. Возвести в квадрат: 5^2 = 25
2. Вычесть 1: 25 - 1 = 24
3. Вычесть 1: 24 - 1 = 23
4. Вычесть 1: 23 - 1 = 22
5. Вычесть 1: 22 - 1 = 21
Не получается. Вернемся к началу и попробуем другую комбинацию.
1. Вычесть 1: 5 - 1 = 4
2. Вычесть 1: 4 - 1 = 3
3. Возвести в квадрат: 3^2 = 9
4. Вычесть 1: 9 - 1 = 8
5. Возвести в квадрат: 8^2 = 64
Получилось! Последовательность команд: 22121
Ответ: 22121