Ниже записаны две рекурсивные функции, F и G: function F(n: integer): integer; begin if n...

0 голосов
112 просмотров

Ниже записаны две рекурсивные функции, F и G:
function F(n: integer): integer;
begin
if n > 2 then
F := F(n - 1) + G(n - 2)
else
F := 1;
end;
function G(n: integer): integer;
begin
if n > 2 then
G := G(n - 1) + F(n - 2)
else
G := 1;
end;
Чему будет равно значение, вычисленное при выполнении вызова F(7)?


Информатика (117 баллов) | 112 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

F(7) = F(6) + G(5) = F(5) + G(4) + G(4) + F(3) = F(4) + G(3) + G(3) + F(2) + G(3) + F(2) + F(2) + G(1) = F(3) + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 = F(2) + G(1) + 10 = 12

(7.2k баллов)