Решите на паскале . числа фибоначчи определяются как а(0)=1, а(1)=1, а(i)= a(i-1)+a(i-2). найти десятое число фибоначчи .найти : a)n-ое число фибоначчи б)сумму первых n чисел фибоначчи

Архес228 Архес228    1   28.09.2019 13:10    0

Ответы
valerijsafonov valerijsafonov  09.10.2020 00:53

program FibonachiNums;

function FibN(n: integer): BigInteger;

begin

 var (f1, f2) := (BigInteger(1), BigInteger(1));

 for var i := 3 to n do

   (f1, f2) := (f2, f1 + f2);

 result := f2;

end;

function FibSumN(n: integer): BigInteger;

begin

 var (f1, f2) := (BigInteger(1), BigInteger(1));

 var Sum: BigInteger;

 

 if n = 0 then Sum := 0

 else Sum := 1;

 

 for var i := 2 to n do

 begin

   (f1, f2) := (f2, f1 + f2);

   Sum += f1;

 end;

 

 result := Sum

end;

begin

 Println('десятое число Фибоначчи:',FibN(10));

 

 var n := 100;

 Writeln($'{n}-е число Фибоначчи: ',FibN(n));

 

 Println($'Сумма первых {n} чисел Фибоначчи:',FibSumN(n))

 

end.

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