Задание16
1. Рекурсивные функции с возвращаемыми значениями
Алгоритмвычисления значения функции F(n), где n — целоенеотрицательное число, задан следующими соотношениями:
F(n) = 0,при n ≤ 1;
F(n) = F(n −1) + 3n2, если n > 1 и при этом нечётно;
F(n) = n / 2+ F(n − 1) + 2, если n > 1 и приэтом чётно.
Чему равнозначение функции F(49)? В ответе запишите только целое число.
def F(n):
if n <= 1:
return 0
if n % 2 == 1:
return F(n-1) + 3*n*n
return n // 2 + F(n-1) + 2
print(F(49))
2. Алгоритмы, опирающиеся на несколько предыдущихзначений
Последовательность чисел трибоначчи задается рекуррентнымсоотношением:
F(1) = 0
F(2) = 1
F(3) = 1
F(n) = F(n–3) + F(n–2) + F(n–1), при n >3, где n – натуральноечисло.
Чему равно девятое число в последовательности трибоначчи?
def F(n):
if n == 1:
return 1
if n == 2:
return 1
if n > 2:
return F(n-2) + F(n-1)
print(F(9))
Алгоритм вычисления значения функции F(n),где n — целое неотрицательное число, задан следующимисоотношениями: F(0) = 0;
F(n) = F(n −1) + 1, если n нечётно;
F(n) = F(n / 2), если n >0 и при этом n чётно.
Укажитеколичество таких значений n < 1 000 000 000, для которых F(n) = 3.
С
3. Алгоритмы, опирающиеся на одно предыдущеезначение
Алгоритм вычисления значения функции F(n), где n – натуральноечисло, задан следующими соотношениями:
F(1) = 1
F(n) = F(n–1) * n, при n >1
Чему равно значение функции F(5)? В ответе запишите тольконатуральное число.
def F(n):
if n == 1:
return 1
if n > 1:
return F(n-1) * n
print(F(5))
