Напишите нерекурсивную функцию Фибоначи

Ответы

Ответ дал: Аноним
0

PascalABC.NET 3.4.2, сборка 1857 от 05.11.2018

Внимание! Если программа не работает, обновите версию!

function Fib(n: integer): integer;

begin

 if n < 3 then Result := 1

 else

 begin

   var (a, b) := (1, 1);

   for var i := 3 to n do

     (a, b) := (a + b, a);

   Result := a

 end

end;


begin

 for var i := 1 to 10 do Fib(i).Print; // контрольный пример

end.

1 1 2 3 5 8 13 21 34 55

Вас заинтересует