Задание 11 Параграф 9 ГДЗ Босова 11 класс (Информатика)
program Z_9_11;
function F(n: integer): integer;
begin
if n < = 2 then F := 1 else F := F(n - 1) + 3 * F(n - 2)
end;
var
x: integer;
begin
readln(x);
writeln(F(x))
end.
Программа: Z_9_11.pas (ссылка ниже)
Функция задана рекурсивно:
$$F(n)=1,\ \text{если } n \le 2,$$
$$F(n)=F(n-1)+3\cdot F(n-2),\ \text{если } n>2.$$
Вычислим последовательно:
$$F(1)=1,$$
$$F(2)=1,$$
$$F(3)=F(2)+3\cdot F(1)=1+3\cdot 1=4,$$
$$F(4)=F(3)+3\cdot F(2)=4+3\cdot 1=7,$$
$$F(5)=F(4)+3\cdot F(3)=7+3\cdot 4=19,$$
$$F(6)=F(5)+3\cdot F(4)=19+3\cdot 7=40,$$
$$F(7)=F(6)+3\cdot F(5)=40+3\cdot 19=97.$$
program Z_9_11;
function F(n: integer): integer;
begin
if n <= 2 then F := 1 else F := F(n — 1) + 3 * F(n — 2)
end;
var
x: integer;
begin
readln(x);
writeln(F(x))
end.
Ответ
$$F(7)=97.$$