Исполнитель Калькулятор преобразует число ** экране. У исполнителя есть две команды,...

+393 голосов
632k просмотров

Исполнитель Калькулятор преобразует число на экране. У исполнителя есть две команды, которым присвоены номера: 1. Прибавить 1 2. Умножить на 2 Программа для исполнителя Калькулятор – это последовательность команд. Сколько существует программ, для которых при исходном числе 2 результатом является число 34 и при этом траектория вычислений содержит число 10 и не содержит числа 28? Задача с сайта Полякова Ответ :21 как решить?


Информатика (36 баллов) | 632k просмотров
Дано ответов: 2
+97 голосов

Ответ: 21

Объяснение:

Каким бы длинным решение не казалось - это не так, оно очень короткое, просто очень подробно расписано во всех деталях. Итак, что нам известно:

  • Команда 1: +1
  • Команда 2: *2
  • Начальное: 2
  • Конечное: 34
  • Проходит через: 10
  • Не проходит через: 28

Траектория вычислений должна содержать число 10. Узнаем сколько таких есть различных путей:

  • 2 +1 +1 +1 +1 +1 +1 +1 +1 = 10
  • 2 *2 +1 +1 +1 +1 +1 +1 = 10
  • (2 +1) *2 +1 +1 +1 +1 = 10
  • (2 +1 +1) *2 +1 +1 = 10
  • (2 *2) *2 +1 +1 = 10
  • (2 +1 +1 +1) *2 = 10
  • (2 *2 +1) *2 = 10

Как мы видим - 7. Так как мы узнали все возможные пути до 10, узнаем теперь пути от 10 до 34. Чтобы они не проходили через число 28, нам нужно "перескочить" его, то есть какое-то число, меньшее 28, мы должны умножить на 2 и получить какое-то число, большее 28. Получаем такое неравенство: 10≤x<28 и 28<2x≤34</strong>

(10≤x<28 и 28<2x≤34) => (10≤x<28 и 14<x≤17) => (14

Подыщем такие значения:

  • 10 +1 +1 +1 +1 +1 = 15
  • 10 +1 +1 +1 +1 +1 +1 = 16
  • 10 +1 +1 +1 +1 +1 +1 +1 = 17

Как мы видим - их 3. Дальше рассмотрим каждый:

  • 15 *2 +1 +1 +1 +1 = 34
  • 16 *2 +1 +1 = 34
  • 17 * 2 = 34

Выходит для каждого только 1 вариант ("15+1", "15+1+1", "16+1" будет иметь такой же путь, как и просто 16 и 17, поэтому их не рассматриваем).

Получается 7 путей от 2 до 10 и 3 пути от 10 до 34. Итого: 7*3 = 21.

(3.7k баллов)
+102 голосов

Я готова объяснить, если останутся вопросы .

(10 баллов)