Последовательность чисел Фибоначчи задается рекуррентным соотношением: F(0) = 1
F(1) = 2
F(n–2) + F(n–1)=F(n,n>1)
Напишите программу на паскале, которая вычисляет номер заданного числа Фибоначчи

artem20051105 artem20051105    2   30.03.2021 19:06    2

Ответы
Человек12888888888 Человек12888888888  29.04.2021 19:06

function fibonacchi(x:integer):integer;

// функция возвращает порядковый номер введённого числа

// ряда Фибоначчи. Если число не является элементом

// из данного ряда, то функция возвращает -1

var counter:integer = 2;

   s1,s2,s3:integer;

begin

   s1 := 0;

   s2 := 1;

   s3 := 0;

   if x = 0 then fibonacchi:=1

   else if x = 1 then fibonacchi:=2

   else begin

       while s3 < x do begin

           s3 := s1 + s2;

           s1 := s2;

           s2 := s3;

           inc(counter);

       end;

       if s3 = x then fibonacchi:=counter

       else fibonacchi:=-1;

   end;

end;

begin

   write(fibonacchi(13));

end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика