ВАРИАНТ 1
Исполнитель Увеличитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 2
2. Прибавить 7
Первая команда увеличивает число на экране на 2, вторая увеличивает это число на 7. Программа для исполнителя Увеличитель – это последовательность команд. Сколько существует программ, которые число 5 преобразуют в число 49?
if n==49:
return 1
elif n>49:
return 0
else:
return f(n+2)+f(n+7)
print(f(5))
Ответ: 639
ВАРИАНТ 2
Исполнитель Увеличитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 2
2. Прибавить 7
Первая команда увеличивает число на экране на 2, вторая увеличивает это число на 7. Программа для исполнителя Увеличитель – это последовательность команд. Сколько существует программ, которые число 7 преобразуют в число 51?
if n==51:
return 1
elif n>51:
return 0
else:
return f(n+2)+f(n+7)
print(f(7))
Ответ: 639
ВАРИАНТ 3
Исполнитель Увеличитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 2
2. Прибавить 10
Первая команда увеличивает число на экране на 2, вторая увеличивает это число на 10. Программа для исполнителя Увеличитель – это последовательность команд. Сколько существует программ, которые число 5 преобразуют в число 141?
В задании опечатка, приведу решение для чисел (5, 41)
def f(n):
if x==y:
return 1
elif x>y:
return 0
else:
return f(x+2,y)+f(x+10,y)
print(f(5,41))
Ответ: 80
ВАРИАНТ 4
Исполнитель Увеличитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 2
2. Прибавить 10
Первая команда увеличивает число на экране на 2, вторая увеличивает это число на 10. Программа для исполнителя Увеличитель – это последовательность команд. Сколько существует программ, которые число 7 преобразуют в число 121?
В задании опечатка, ответ довольно большой.
def f(n):
if x==y:
return 1
elif x>y:
return 0
else:
return f(x+2,y)+f(x+10,y)
print(f(7,121))
Ответ: 4615966
ВАРИАНТ 5
Исполнитель Вычислитель преобразует число, записанное на экране. У исполнителя есть две команды, которым присвоены номера:
1. Вычти 1
2. Найди целую часть от деления на 2
Первая из них уменьшает число на экране на 1, вторая заменяет число на экране на число, равное целой части от деления числа на экране на 2.
Программа для Вычислителя — это последовательность команд. Сколько существует таких программ, которые преобразуют исходное число 30 в число 1, и при этом траектория вычислений программы содержит число 10?
Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 18 траектория будет состоять из чисел 17, 8, 7.
if x==y:
return 1
elif x<y:
return 0
else:
return f(x-1,y)+f(x//2,y)
print(f(30,10)*f(10,1))
Ответ: 360
ВАРИАНТ 6
Исполнитель Вычислитель преобразует число, записанное на экране. У исполнителя есть две команды, которым присвоены номера:
- 1. Вычти 1
- 2. Найди целую часть от деления на 2
Первая из них уменьшает число на экране на 1, вторая заменяет число на экране на число, равное целой части от деления числа на экране на 2.
Программа для Вычислителя — это последовательность команд. Сколько существует таких программ, которые преобразуют исходное число 31 в число 2, и при этом траектория вычислений программы содержит число 12?
Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 18 траектория будет состоять из чисел 17, 8, 7.
if x==y:
return 1
elif x<y:
return 0
else:
return f(x-1,y)+f(x//2,y) print(f(31,12)*f(12,2))
Ответ: 171
ВАРИАНТ 7
Исполнитель Вычислитель преобразует число, записанное на экране. У исполнителя есть две команды, которым присвоены номера:
- Вычти 1
- Найди целую часть от деления на 3
Первая из них уменьшает число на экране на 1, вторая заменяет число на экране на число, равное целой части от деления числа на экране на три.
Программа для Вычислителя — это последовательность команд. Сколько существует таких программ, которые преобразуют исходное число 33 в число 1, и при этом траектория вычислений программы содержит число 9?
Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 18 траектория будет состоять из чисел 17, 5, 4.
if x==y:
return 1
elif x<y:
return 0
else:
return f(x-1,y)+f(x//3,y)
print(f(33,9)*f(9,1))
Ответ: 72