mealex

Решение заданий B2

Recommended Posts

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

1. прибавь 3

2. умножь на 4

Выполняя первую из них, Калькулятор прибавляет к числу на экране 3, а выполняя вторую, умножает его на 4. Запишите порядок команд в программе получения из числа 3 числа 57, содержащей не более 6 команд, указывая лишь номера команд.

(Например, программа 21211 это программа

умножь на 4

прибавь 3

умножь на 4

прибавь 3

прибавь 3

которая преобразует число 2 в 50.)

Решение (вариант 2, «обратный ход»)
:

1) нам нужно увеличить число (с 3 до 57), для этого в большинстве случаев умножение эффективнее сложения, поэтому нужно постараться максимально использовать умножение, а сложение – только в крайних случаях

2) попробуем решить задачу «обратным ходом», начав с числа 57;

3) очевидно, что последней командой не может быть умножение на 4 (57 на 4 не делится), поэтому последняя команда – сложение (
прибавь 3
):

54-->57

4) число 54 также не делится на 4, поэтому предыдущая команда – тоже сложение:

51-->54-->57

5) аналогично для числа 51:

48-->51-->54-->57

6) число 48 делится на 4, поэтому используем умножение:

12-->48-->51-->54-->57

7) наконец, добавив в начало программы еще одно умножение, получаем полную цепочку:

3-->12-->48-->51-->54-->57

8) таким образом, правильный ответ – 22111, эта программа состоит из 5 команд.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------

Исполнитель Робот ходит по клеткам бесконечной вертикальной клетчатой доски, переходя по одной из команд вверх, вниз, вправо, влево в соседнюю клетку в указанном направлении. Робот выполнил следующую программу:

вправо

вверх

влево

влево

вниз

вниз

вправо

вправо

вправо

вниз

влево

Укажите наименьшее возможное число команд в программе, переводящей Робота из той же начальной клетки в ту же конечную

1)отметим, что в условии ничего не говорится о стенках, то есть, молчаливо предполагаем, что их нет

2) можно повторить все движения Робота на бумажке и посмотреть, куда он уйдет;

3) поскольку Робот не может ходить по диагонали, для перехода из начальной точки в конечную кратчайшим путем ему нужно выполнить, например, такую программу:

вниз

вниз

вправо

4)есть и другие варианты (попробуйте их найти!), но все они содержат 3 команды: одну команду вправо и две команды вниз

5)таким образом, ответ – 3.

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

1. прибавь 2

2. умножь на 3

Выполняя первую из них, Калькулятор прибавляет к числу на экране 2, а выполняя вторую, умножает его на 3. Запишите порядок команд в программе получения из числа 0 числа 28, содержащей не более 6 команд, указывая лишь номера команд.

(((0+2)*3+2)*3)+2+2

Ответ: 121211

Share this post


Link to post
Share on other sites
Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, .
Ответить в теме...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Загрузка...

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу