Задание 23. Задача Преобразовать число 120
Скачать 14.51 Kb.
|
Задание 23 Задача 1. Преобразовать число 120 def numProg( start, x ): if x < start: return 0 if x == start: return 1 return numProg(start+1,x)+ numProg(start*3,x) print( numProg(1,20)) Задача 2. Преобразовать число 121 (через число 10) def numProg( start, x ): if x < start: return 0 if x == start: return 1 return numProg(start+1,x)+ numProg(start*2,x) print( numProg(1,10)*numProg(10,21)) Задача 3. Преобразовать число 135 (через число 15, минуя число 17) def numProg( start, x, blocked): if x < start: return 0 if x == start: return 1 if start in blocked: return 0 return numProg(start+1,x,blocked)+ numProg(start*2,x,blocked) print( numProg(1,15,[])*numProg(15,35,[17])) Задачи Исполнитель Умножитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера: 1. Умножить на 2 2. Умножить на 3 Первая команда увеличивает число на экране в 2 раза, вторая – увеличивает значение в 3 раза. Сколько существует программ, для которых при исходном числе 8 результатом является число 3456, и при этом траектория вычислений содержит число 96. Исполнитель Калькулятор преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены номера: 1. Прибавь 1 2. Прибавь 3 3. Умножь на 2 Сколько существует программ, которые преобразуют исходное число 3 в число 21, и при этом траектория вычислений содержит число 8 и не содержит числа 12? Исполнитель Калькулятор преобразует число, записанное на экране. У исполнителя есть три команды, которым присвоены номера: 1. Прибавь 1 2. Прибавь 2 3. Прибавь 3 Сколько существует программ, которые преобразуют исходное число 5 в число 18, и при этом траектория вычислений содержит число 11 и не содержит чисел 10 и 15? Исполнитель Калькулятор преобразует число на экране. У исполнителя есть три команды, которым присвоены номера: 1. Прибавить 2 2. Прибавить 4 3. Прибавить 5 Определите число, для получения которого из числа 31 существует 1001 программа. |