Присоединиться

Информатика·Оператор присваивания и ветвления. Перебор вариантов·11 класс

Сколько существует программ, которые преобразуют исходное число 36 в

Условие

Исполнитель преобразует число на экране. У исполнителя есть две команды, которые обозначены буквами. A. Вычти 2 B. Если число кратно 3, Раздели на 3, Иначе Вычти 4 Программа для исполнителя — это последовательность команд. Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы BAB при исходном числе 99 траектория будет состоять из чисел 33, 31, 27. Сколько существует программ, которые преобразуют исходное число 36 в число 4 и при этом траектория вычислений не содержит числа 16?

Ответ

40

Решение по шагам

  1. Как рассуждать

    Решение. Приведём решение на языке Python.def f(x, y): if x < y or x == 16: return 0 if x == y: return 1 else: if x%3==0: return f(x - 2, y) + f(x // 3, y) else: return f(x - 2, y) + f(x - 4, y)print(f(36, 4)) Ответ:

Осталось ещё 1 шаг — откроются после входа:

  • Шаг 2
Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Оператор присваивания и ветвления. Перебор вариантов»