Предмет: Информатика, автор: rizvanmallaev

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

Задача с сайта Полякова
Ответ :21
как решить?

Ответы

Автор ответа: NamiMika
2

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

Приложения:
Автор ответа: LRSM
3

Ответ: 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

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

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

  • 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.

Похожие вопросы
Предмет: Математика, автор: sanir2