Вопрос:

B4. исполнителя Квадр две команды, которым присвоены номера: 1. прибавь 1, 2. возведи в квадрат. Первая из этих команд увеличивает число на экране на 1, вторая возводит в квадрат. Программа для исполнителя Квадр - это последовательность номеров команд. Например, 22111 - это программа: возведи в квадрат, возведи в квадрат, прибавь 1, прибавь 1, прибавь 1. Эта программа преобразует число 3 в число 84. Запишите программу для исполнителя Квадр, которая преобразует число 3 в число 10001 и содержит не более 6 команд. Если таких программ более одной, то запишите любую из них.

Смотреть решения всех заданий с листа

Ответ:

Привет! Давай решим эту задачку с командами для Квадра.

У нас есть две команды:

  • 1: прибавь 1
  • 2: возведи в квадрат

Нужно из числа 3 получить 10001, используя не более 6 команд.

Смотри, 10001 — это довольно большое число. Возведение в квадрат — самая мощная операция. Попробуем начать с нее.

Если мы возведем 3 в квадрат, получим 9. Еще раз — 81. И еще раз — 6561. Это уже близко к 10001!

Давай проверим такую последовательность:

  1. 2 (возведи в квадрат): 3 * 3 = 9
  2. 2 (возведи в квадрат): 9 * 9 = 81
  3. 2 (возведи в квадрат): 81 * 81 = 6561

Сейчас у нас 6561, а нужно 10001. Разница составляет 10001 - 6561 = 3440.

Мы использовали 3 команды. Осталось 3 команды, чтобы получить 3440, прибавляя 1.

Это невозможно, так как даже если мы прибавим 1 три раза, получим всего 3.

Давай подумаем иначе. Может, возведем в квадрат не три раза, а два?

  1. 2 (возведи в квадрат): 3 * 3 = 9
  2. 2 (возведи в квадрат): 9 * 9 = 81

Теперь у нас 81. Нужно получить 10001. Разница: 10001 - 81 = 9920.

У нас осталось 4 команды, чтобы прибавить 1, то есть максимум мы можем добавить 4.

Это тоже не работает.

Может, стоит сначала прибавить, а потом возвести в квадрат?

Давай попробуем так:

  1. 1 (прибавь 1): 3 + 1 = 4
  2. 2 (возведи в квадрат): 4 * 4 = 16
  3. 1 (прибавь 1): 16 + 1 = 17
  4. 2 (возведи в квадрат): 17 * 17 = 289

Это далеко от 10001.

Что если мы сначала прибавим много раз, а потом возведем в квадрат?

Квадрат какого числа близок к 10001? Корень из 10001 примерно 100.005.

Значит, нам нужно получить число, близкое к 100, а потом возвести его в квадрат.

Давай попробуем получить 100, прибавляя 1.

Чтобы из 3 получить 100, нам нужно прибавить 97 раз. Это слишком много команд.

Давай вернемся к квадратам. 10001. Что если использовать команду «прибавь 1» после возведения в квадрат?

Попробуем такую комбинацию:

  1. 2 (возведи в квадрат): 3 * 3 = 9
  2. 1 (прибавь 1): 9 + 1 = 10
  3. 2 (возведи в квадрат): 10 * 10 = 100
  4. 1 (прибавь 1): 100 + 1 = 101

Теперь у нас 101. Нам нужно 10001. Осталось 2 команды.

Если мы возведем 101 в квадрат: 101 * 101 = 10201. Это больше, чем нужно.

Что если мы попробуем получить число, квадрат которого плюс что-то будет 10001?

Например, 100^2 = 10000. Нам не хватает 1.

Значит, нам нужно получить 100, а потом прибавить 1.

Как получить 100 из 3 за 5 команд (чтобы оставить одну команду на +1)?

Мы уже видели, что 2 (3 -> 9), 1 (9 -> 10), 2 (10 -> 100). Это 3 команды.

Итак:

  1. 2 (возведи в квадрат): 3 * 3 = 9
  2. 1 (прибавь 1): 9 + 1 = 10
  3. 2 (возведи в квадрат): 10 * 10 = 100

У нас 100, использовано 3 команды. Осталось 3 команды, чтобы получить 10001.

Если мы теперь сделаем:

  1. 1 (прибавь 1): 100 + 1 = 101
  2. 2 (возведи в квадрат): 101 * 101 = 10201

Это опять не то.

Давай попробуем получить 10000, а потом прибавить 1.

Как получить 10000? Это 100 * 100.

Чтобы получить 100 из 3, мы можем сделать:

  1. 2 (возведи в квадрат): 3 * 3 = 9
  2. 1 (прибавь 1): 9 + 1 = 10
  3. 2 (возведи в квадрат): 10 * 10 = 100

Это 3 команды. Теперь у нас 100.

Нам нужно 10001. Мы можем сделать:

  1. 2 (возведи в квадрат): 100 * 100 = 10000
  2. 1 (прибавь 1): 10000 + 1 = 10001

Получилось! Программа:

2, 1, 2, 2, 1

Давай проверим: 3 --(2)--> 9 --(1)--> 10 --(2)--> 100 --(2)--> 10000 --(1)--> 10001.

Это 5 команд. Это меньше 6. Отлично!

Ответ: 21221

ГДЗ по фото 📸
Подать жалобу Правообладателю

Похожие