
Kaomtemav
5 год назад
Функция F(n), где n – натуральное число, задана следующим образом:Паскальfunction F(n: integer): integer;beginif n > 1 thenF := 2*n +F(n-2)+F(n-3)elseF := n + 5;end;Чему будет равно значение, вычисленное алгоритмом при выполнении вызова F(6)?
ОТВЕТЫ

Антон
Oct 24, 2020
Имеем рекуррентное соотношение для F(n):
F(n) = 2n + F(n - 2) + F(n - 3) при n > 1, и n + 5 иначе.
F(-1) = -1 + 5 = 4
F(0) = 0 + 5 = 5
F(1) = 1 + 5 = 6
F(2) = 2 * 2 + F(0) + F(-1) = 4 + 5 + 4 = 13
F(3) = 2 * 3 + F(1) + F(0) = 6 + 6 + 5 = 17
F(4) = 2 * 4 + F(2) + F(1) = 8 + 13 + 6 = 27
F(5) = 2 * 5 + F(3) + F(2) = 10 + 17 + 13 = 40
F(6) = 2 * 6 + F(4) + F(3) = 12 + 27 + 17 = 56
. F(6) = 56.
F(n) = 2n + F(n - 2) + F(n - 3) при n > 1, и n + 5 иначе.
F(-1) = -1 + 5 = 4
F(0) = 0 + 5 = 5
F(1) = 1 + 5 = 6
F(2) = 2 * 2 + F(0) + F(-1) = 4 + 5 + 4 = 13
F(3) = 2 * 3 + F(1) + F(0) = 6 + 6 + 5 = 17
F(4) = 2 * 4 + F(2) + F(1) = 8 + 13 + 6 = 27
F(5) = 2 * 5 + F(3) + F(2) = 10 + 17 + 13 = 40
F(6) = 2 * 6 + F(4) + F(3) = 12 + 27 + 17 = 56
. F(6) = 56.
110
Смежные вопросы: