Исполнитель вычислитель умеет исполнять только две команды:умножать на 2 и прибавЛять 1. Составьте для вычислителя наиболее короткую программу получение из числа 1 чисел :5, 50 ,99 .

Лять 1. Составьте для вычислителя наиболее короткую программу получение из числа 1 чисел :5, 50 ,99 .

Ответы:
Вика Михайловская
25-10-2017 03:45

{0 - умножить на 2; 1 - прибавить 1}5: 001 {1 - 2 - 4 - 5}50: 0100010 {1 - 2 - 3 - 6 - 12 - 24 - 25 - 50}99: 010000101 {1 - 2 - 3 - 6 - 12 - 24 - 48 - 49 - 98 - 99}В данном случае достаточно просто идти с конца. Скажем, если есть число 99, очевидно, последней командой было "прибавить 1". Далее, 98 - может быть получено умножением на 2, и следует выбирать именно эту команду - программа точно не будет превосходить по размеру вариант, где последней операцией является сложение.Например,98 - 49 - 48 короче, чем98 - 97 - 96 - 48

Картинка с текстом вопроса от пользователя ельвира Русын

⭐⭐⭐⭐⭐ Лучший ответ на вопрос «Исполнитель вычислитель умеет исполнять только две команды:умножать на 2 и прибав» от пользователя ельвира Русын в разделе Информатика. Задавайте вопросы и делитесь своими знаниями.

Открой этот вопрос на телефоне - включи камеру и наведи на QR-код!