Контрольные задания > У исполнителя Квадратор две команды, которым присвоены номера:
1. возведи в квадрат
2. прибавь 1
Первая из них возводит число на экране во вторую степень, вторая увеличивает число на 1.
Составьте алгоритм получения из числа 2 числа 101, содержащий не более 5 команд.
В ответе запишите только номера команд.
(Например, 22112 – это алгоритм:
прибавь 1
прибавь 1
возведи в квадрат
возведи в квадрат
прибавь 1,
который преобразует число 1 в 82.)
Если таких алгоритмов более одного, то запишите любой из них.
Вопрос:
У исполнителя Квадратор две команды, которым присвоены номера:
1. возведи в квадрат
2. прибавь 1
Первая из них возводит число на экране во вторую степень, вторая увеличивает число на 1.
Составьте алгоритм получения из числа 2 числа 101, содержащий не более 5 команд.
В ответе запишите только номера команд.
(Например, 22112 – это алгоритм:
прибавь 1
прибавь 1
возведи в квадрат
возведи в квадрат
прибавь 1,
который преобразует число 1 в 82.)
Если таких алгоритмов более одного, то запишите любой из них.
Ответ:
Для решения этой задачи нам нужно получить число 101 из числа 2, используя команды "возведи в квадрат" (1) и "прибавь 1" (2), при этом количество команд не должно превышать 5.
Попробуем несколько вариантов:
1. Команда 1 (возведи в квадрат) первое число: 22 = 4
2. Команда 1 (возведи в квадрат) второе число: 42 = 16
3. Команда 1 (возведи в квадрат) третье число: 162 = 256 (слишком много, нужно уменьшать число)
Вместо этого пойдем другим путем:
1. Команда 2 (прибавь 1) первое число: 2 + 1 = 3
2. Команда 1 (возведи в квадрат) второе число: 32 = 9
3. Команда 1 (возведи в квадрат) третье число: 92 = 81
4. Команда 2 (прибавь 1) четвертое число: 81 + 1 = 82
5. Команда 2 (прибавь 1) пятое число: 82 + 1 = 83 (это не 101)
Пойдем другим путем:
1. Команда 1 (возведи в квадрат): 22 = 4
2. Команда 2 (прибавь 1): 4 + 1 = 5
3. Команда 1 (возведи в квадрат): 52 = 25
4. Команда 1 (возведи в квадрат): 252 = 625 (Опять слишком много!)
Попробуем такую последовательность:
1. Команда 2 (прибавь 1): 2 + 1 = 3
2. Команда 2 (прибавь 1): 3 + 1 = 4
3. Команда 1 (возведи в квадрат): 42 = 16
4. Команда 2 (прибавь 1): 16 + 1 = 17
5. Команда 1 (возведи в квадрат): 172 = 289 (опять слишком много)
Давай попробуем ещё раз, но уже ближе к концу попробуем прибавлять, чтобы не перескакивать нужное число:
1. Команда 1 (возведи в квадрат): 22 = 4
2. Команда 1 (возведи в квадрат): 42 = 16
3. Команда 2 (прибавь 1): 16 + 1 = 17
4. Команда 2 (прибавь 1): 17 + 1 = 18
5. Команда 1 (возведи в квадрат): 182 = 324 (все равно много)
Попробуем с самого начала делать меньше квадратов, а больше прибавлений:
1. Команда 2 (прибавь 1): 2 + 1 = 3
2. Команда 2 (прибавь 1): 3 + 1 = 4
3. Команда 2 (прибавь 1): 4 + 1 = 5
4. Команда 2 (прибавь 1): 5 + 1 = 6
5. Команда 1 (возведи в квадрат): 62 = 36 (маловато)
Необходимо скомбинировать так, чтобы квадрат был в нужном месте.
1. Команда 2 (прибавь 1): 2 + 1 = 3
2. Команда 1 (возведи в квадрат): 32 = 9
3. Команда 2 (прибавь 1): 9 + 1 = 10
4. Команда 2 (прибавь 1): 10 + 1 = 11
5. Команда 1 (возведи в квадрат): 112 = 121 (многовато, но ближе)
Продолжаем искать!
1. Команда 1 (возведи в квадрат): 22 = 4
2. Команда 2 (прибавь 1): 4 + 1 = 5
3. Команда 2 (прибавь 1): 5 + 1 = 6
4. Команда 2 (прибавь 1): 6 + 1 = 7
5. Команда 1 (возведи в квадрат): 72 = 49
В этот раз попробуем так:
1. Команда 2 (прибавь 1): 2 + 1 = 3
2. Команда 2 (прибавь 1): 3 + 1 = 4
3. Команда 1 (возведи в квадрат): 42 = 16
4. Команда 2 (прибавь 1): 16 + 1 = 17
5. Команда 2 (прибавь 1): 17 + 1 = 18
Надо что-то около 10.
1. Команда 2 (прибавь 1): 2 + 1 = 3
2. Команда 1 (возведи в квадрат): 32 = 9
3. Команда 2 (прибавь 1): 9 + 1 = 10
4. Команда 1 (возведи в квадрат): 102 = 100
5. Команда 2 (прибавь 1): 100 + 1 = 101
Ура, мы нашли последовательность команд!
Ответ: 21212