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

Напишите программу на Python'е для решения следующей задачи:

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


1. прибавь 1

2. сделай нечётное



Первая из этих команд увеличивает число x на экране на 1, вторая переводит число x в число 2x+1. Например, вторая команда переводит число 10 в число 21. Программа для исполнителя НечетМ – это последовательность команд. Сколько существует таких программ, которые число 1 преобразуют в число 27, причём траектория вычислений не содержит число 26? Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 17, 18.


vanisherxxx: damskiyugodnik43, существует много способов решить данное задание, но почему же алгоритм схож с решу егэ, да и вообще, я просил полную программу, а не лишь куски.
vanisherxxx: damskiyugodnik43, диалог с вами я считаю бесполезным.
vanisherxxx: damskiyugodnik43, о списывании речь не шла.

Ответы

Автор ответа: Аноним
2

a = 1

res = 0

def pr(x, mas):

   if x == 27:

       global res

       res+=1

   elif x<27:

       if x+1 !=26:

           pr(x+1, mas+[x+1])

       if 2*x+1 != 26:

           pr(2*x+1, mas+[2*x+1])

pr(1, [1])

print(res)


vanisherxxx: Меньше г-кода
vanisherxxx: Моя программа отличается от твоей простотой, как говорится, что видишь, то и пишешь, никто такое большое значение давать не будет на экзамене, даже, если даст, можно поставить мою программу, пусть грузится, и перейти к другому заданию
vanisherxxx: Но я не против твоего решения, как вариант можно, но я нашёл то что для меня проще
vanisherxxx: И не поспоришь
Похожие вопросы
Предмет: Русский язык, автор: айзи1
Предмет: Математика, автор: Анечка8765