Задание 2. Тип заданий 6: алгоритмы.
  • Задание:

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

    1. прибавь 1,

    2. умножь на 3.

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

    Например, 1221 — это программа

    прибавь 1

    умножь на 3

    умножь на 3

    прибавь 1

    которая преобразует число 1 в число 19.

    Запишите порядок команд в программе, которая преобразует число 5 в число 56 и содержит не более пяти команд. Если таких программ несколько, напишите любую из них.

  • Решение:

    Обратите внимание на вторую команду — умножь на 3. Умножать на 3 мы можем любое число, а вот делить на 3 — нет.

    То есть гораздо проще преобразовывать не 5 в 56, а 56 в 5, и при этом использовать противоположные команды:

    1. вычти 1,

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

    56 на 3 не делится, то есть мы можем только вычесть 1, 56-1=55

    55 на 3 не делится, то есть мы можем только вычесть 1, 55-1=54

    54 на 3 делится, 54:3=18

    18 на 3 делится, 18:3=6

    6 на 3 делится, но нам нужно получить число 5, то есть применим первую команду 6-1=5

    Получается, что порядок команд для преобразования числа 56 в 5 — 11221

    Нам же нужно было перевести 5 в 56, то есть запишем обратный порядок команд: 12211

    Ответ: 12211

Поделиться:
 
Комментарии (1)
Яков Стуруа # 28 марта 2016 в 18:04 -1
Может утроитель?
Перевести число из в Результат: 510 = 1012