OpenFIPI 2.0

105

5

oge_4B284F

У исполнителя Делитель две команды, которым присвоены номера:

1. раздели на 2

2. прибавь 1

Первая из них уменьшает число на экране в 2 раза, вторая увеличивает его на 1.

Исполнитель работает только с натуральными числами.

Составьте алгоритм получения из числа 89 числа 24, содержащий не более 5 команд. В ответе запишите только номера команд.

 

(Например, 21121  это алгоритм:

прибавь 1

раздели на 2

раздели на 2

прибавь 1

раздели на 2,

который преобразует число 75 в 10.)

 

Если таких алгоритмов более одного, то запишите любой из них.

21212

Решение:

Поскольку начальное число 89 — нечётное, а исполнитель работает только с натуральными числами, первую команду можно выбрать только «прибавь 1». После этого получаем число 90.

Далее из числа 90 нужно получить 24 за 4 команды:

  • 90 → 45 (команда 1 — делим на 2)

  • 45 → 46 (команда 2 — прибавляем 1)

  • 46 → 23 (команда 1 — делим на 2)

  • 23 → 24 (команда 2 — прибавляем 1)

Полная последовательность команд: 21212

Проверка:

  • Начальное число: 89

  • 89 → 90 (команда 2)

  • 90 → 45 (команда 1)

  • 45 → 46 (команда 2)

  • 46 → 23 (команда 1)

  • 23 → 24 (команда 2)

  • Конечное число: 24

  • Количество команд: 5 (в пределах допустимого)

Ответ: 21212

Просмотреть отправленные ответы oge_4B284F