Алгоритм вычисления значения функции F(n), где n — целое неотрицательное число, задан следующими соотношениями:
при
если
Чему равно значение функции F(18)?
Приведём решение на языке Python.
def F(n):
if n < 3:
return 1
if n > 2:
return sum(F(i) for i in range (1,n))
print(F(18))
Ответ: 65536.
Приведём решение Юрия Красильникова на языке Pascal.
function f(n:longint):longint;
var s,i: longint;
begin
if n<3 then
f:=1
else
begin
s:=0;
for i := 1 to n-1 do s := s + f(i);
f := s;
end;
end;
begin
writeln (f(18))
end.
Приведём решение Бориса Савельева на языке Python.
for i in range (3,19):
ans = 2**(i-2)
print(ans) #функция возвращает двойку в степени порядкового номера - 2

