Исполнитель Калькулятор имеет следующую систему команд: 1) прибавь 1;
2) умножь на 2.
С первой из них исполнитель увеличивает число на экране на 2, с второй — в 2 раза.
1) Выясните, сколько разных программ, преобразующих число 1 в число 20, можно составить для этого исполнителя.
2) Сколько среди них таких программ, у которых в качестве промежуточного результата обязательно получается число 15?
3) Сколько среди них таких программ, у которых в качестве промежуточного результата никогда не получается число 12?
1) Для того чтобы преобразовать число 1 в число 20 с помощью данного исполнителя, мы можем использовать две команды: "прибавь 1" или "умножь на 2". Мы можем использовать эти команды в любом порядке и любое количество раз. Таким образом, мы должны найти количество различных комбинаций команд, которые приведут нас к числу 20.
Давайте посмотрим на возможные команды, которые мы можем использовать, и их результаты, когда применяются к числу 1:
1) Прибавь 1: 1 + 1 = 2
2) Умножь на 2: 1 * 2 = 2
Таким образом, мы можем заметить, что на каждом шаге мы получаем одинаковый результат 2, независимо от того, какую команду мы используем. Следовательно, чтобы достичь числа 20, нам понадобится применить команду "умножь на 2" 10 раз (так как 2^10 = 1024, а 2^9 = 512).
Ответ: Существует только одна программа, которая преобразует число 1 в число 20.
2) Теперь нам нужно найти программы, которые обязательно приводят к числу 15. Для этого мы должны рассмотреть все комбинации команд от начала до числа 15 и от числа 15 до 20.
От начала до числа 15, у нас есть две возможные команды (прибавь 1 и умножь на 2). Поэтому у нас есть 2^14 = 16 384 разных комбинаций команд, которые могут привести к числу 15.
От числа 15 до 20, у нас также есть две возможные команды (прибавь 1 и умножь на 2), но у нас уже нет выбора команды "прибавь 1", так как мы обязательно должны применить команду "умножь на 2", чтобы достичь числа 20. Таким образом, у нас остается только одна комбинация команд: "умножь на 2", которая приведет к числу 20.
Ответ: Существует только одна программа, которая обязательно приводит к числу 15.
3) Теперь нам нужно найти программы, которые никогда не приводят к числу 12. Для этого мы должны рассмотреть все комбинации команд от начала до числа 12 и от числа 12 до 20.
От начала до числа 12 у нас есть две возможные команды (прибавь 1 и умножь на 2). Если мы рассмотрим все возможные комбинации команд до числа 12, то заметим, что есть всего 2^11 = 2048 комбинаций команд, которые могут привести к числу 12.
От числа 12 до числа 20, у нас также есть две возможные команды (прибавь 1 и умножь на 2). Но если мы рассмотрим все возможные комбинации команд, то обязательно найдем комбинацию, которая приведет к числу 12, так как мы можем применить команду "умножь на 2" два раза и получить число 12, а затем применить команду "прибавь 1" восемь раз для достижения числа 20.
Ответ: Нет программ, которые никогда не приводят к числу 12.
Таким образом, мы получили ответы на все вопросы, используя принципы комбинаторики и анализ возможных команд и их результатов при применении к числу 1.