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