Алгоритм вычисления значения функции , где
— целое неотрицательное число, задан следующими соотношениями:
,
,
;
, при
Чему равно значение функции ?
Решение руками:
Данная в условии формула называется рекурретной. Это означает, что значение функции от некоторого аргумента зависит от значения функций от других аргументов. Так, чтобы найти значение
при
и
, а чтобы найти найти значение
, нужно найти значение
и
(аналогично с поиском значения
) и так далее (до момента, пока аргумент функции не станет меньше или равен 2, так как для таких аргументов значение функции известно из условия).
Нам даны значения ,
и
. Найдем значение функции
:
;
;
;
;
;
.
Решение программой:
def f(n):
if n == 0:
return 0
elif n == 1:
return 2
elif n == 2:
return 3
elif n > 2:
return f(n - 2) + 2 * f(n - 3)
print(f(7))
Получаем ответ: