Ваш браузер устарел. Рекомендуем обновить его до последней версии.

Меню сайта


Счётчик посещений


 

счетчик посещений

Часы

Календарь

Обратная связь

Поля, помеченные символом *, обязательны для заполнения.

22. У исполнителя Удвоитель две команды, которым присвоены номера:
1. прибавь 1,
2. умножь на 2.

Первая из них увеличивает на 1 число на экране, вторая удваивает его.
Программа для Удвоителя – это последовательность команд.
Сколько есть программ, которые число 6 преобразуют в число 21?

Ответ: 6

Решение:

Построим граф, описывающий выполнение команд Удвоителя. 21/2=10 с остатком. Числа больше 10 дают только одну программу, т.к. нельзя применить команду "умножить на 2". Если при построении графа получаем числа больше 10, то дальше от таких чисел ветки строить не будем. Также поступим и с числами, которые уже есть в графе.

Построим этот граф:

 

Получим 6 программ.

 

НАЗАД