Алгоритм вычисления значения функции F(n), где n – натуральное число, задан следующими соотношениями:
F(1) = 1
F(n) = F(n–1) * (n + 1), при n > 1
Чему равно значение функции F(5)? В ответе запишите только целое число.
2)Дан рекурсивный алгоритм:
procedure F(n: integer);
begin
writeln('*');
if n > 0 then begin
F(n-2);
F(n div 2);
F(n div 2);
end
end;
Сколько символов "звездочка" будет напечатано на экране при выполнении вызова F(5)?
3)Дан рекурсивный алгоритм:
procedure F(n: integer);
begin
writeln(n);
if n < 5 then begin
F(n+2);
F(n+3);
F(n*2)
end
end;
Найдите сумму чисел, которые будут выведены при вызове F(1).
4.Ниже записана рекурсивная процедура:
procedure F(n: integer);
begin
if n > 1 then begin
F(n - 4);
write(n);
F(n div 2);
end;
end;
Что будет напечатано на экране при выполнении вызова F(11)?
1) - 0 2) - 1 3) - 9 4) - 7
Объяснение:
2) 1, потому-что writeln('*') записано перед if, значит оно не изменяется при выполнении if
3) F(1+2); = 3
F(1+3); = 4
F(1*2) = 2
3 + 4 + 2 = 9
4) if n > 1 then begin
F(11 - 4); = 7
write(7);
F(n div 2);
end;
end;