Задача
Алгоритмы вычисления значения функций F(n) и G(n), где n – целое число, заданы следующими соотношениями:
F(1) = 1,
F(n) = 2 * F(n – 1) + G(n) при n > 1.
G(1) = 2, G(2) = 2,
G(n) = 3 * G(n – 1) – F(n – 1)
Чему равно значение функции F(15)?
Разбор
Особенность: Функции F и G взаимозависимы — каждая вызывает другую, что делает задачу более сложной.
Метод 1: Рекурсивный подход
Принцип: Реализуем обе функции точно по заданным формулам, позволяя им вызывать друг друга
Структура взаимных вызовов:
F(15) → требует G(15)
G(15) → требует G(14) и F(14)
G(14) → требует G(13) и F(13)
...
F(2) → требует F(1) и G(2)
F(1) = 1 (базовый случай)
G(2) = 2 (базовый случай)