Написать программу по этой задаче на паскале Что будет выведено на экран в результате работы програм-мы? Нарисуйте дерево рекурсивных вызовов функции F(5). Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями: F(1) = 1 F(n) = F(n–1) * (n + 2), при n > 1 Чему равно значение функции F(5)?
program RecursiveFunction; function F(n: Integer): Integer; begin if n = 1 then F := 1 else F := F(n-1) * (n + 2); end; var result: Integer; begin result := F(5); writeln('Значение функции F(5): ', result); end.
Значение функции F(5) равно 1 (5 + 2) (4 + 2) (3 + 2) (2 + 2) = 1 7 6 5 4 = 840
Программа на Pascal:
program RecursiveFunction;function F(n: Integer): Integer;
begin
if n = 1 then
F := 1
else
F := F(n-1) * (n + 2);
end;
var
result: Integer;
begin
result := F(5);
writeln('Значение функции F(5): ', result);
end.
Значение функции F(5) равно 1 (5 + 2) (4 + 2) (3 + 2) (2 + 2) = 1 7 6 5 4 = 840
Дерево рекурсивных вызовов функции F(5):
F(5)|
F(4) * 7
|
F(3) * 6
|
F(2) * 5
|
F(1) * 4