Алгоритм вычисления функции F(n) задан следующими соотношениями:
F(n)=1 при n=1
F(n)=n+F(n–1), если n чётно,
F(n)= 2⋅F(n–2), если n>1 и n нечётно.
Чему равно значение функции F(26)?
Задание из ЕГЭ по информатике. Помогите пожалуйста решить через паскаль (другие языки не знаю) или Эксель.
Answers & Comments
Pascal:
function F(n: integer):integer;
begin
if n = 1 then F:=1
else if n mod 2 = 0 then F:=n+F(n-1)
else F:=2*F(n-2)
end;
var x:integer;
begin
x:=26;
x:=abs(x);
write(F(x));
end.
Python:
def F(n):
if n == 1: return 1
elif n%2 == 0: return n+F(n-1)
else: return 2*F(n-2)
print(F(26))