Числа Фибоначчи - Turbo Pascal (33733)

Узнай цену своей работы

Формулировка задачи:

Числа Фибоначчи (fn) определяются формулами f0=f1=1, fn=fn-1+fn-2 при n=2,3,….. определить f40

Решение задачи: «Числа Фибоначчи»

textual
Листинг программы
Function GetNFibonanchi(a,b,n : Longint) : Longint;
Begin
  If n>3 then GetNFibonanchi:=GetNFibonanchi(a+b,a,n-1)
    else GetNFibonanchi:=a+b;
End;
Function GetNFib(nn : Longint) : Longint;
Begin
  If nn<=1 then GetNFib:=0
    else GetNFib:=GetNFibonanchi(1,0,nn);
End;
  
Begin
  Writeln(GetNFib(40));
End.

Объяснение кода листинга программы

  1. В функции GetNFibonanchi определены три переменные: a, b и n. Переменная n является целочисленной и представляет собой аргумент функции.
  2. В условии If n>3 проверяется, больше ли значение переменной n чем 3. Если это условие истинно, то вызывается рекурсивная функция GetNFibonanchi с аргументами a+b, a и n-1. Это означает, что функция GetNFibonanchi вызывается для чисел Фибоначчи, которые на единицу больше суммы двух предыдущих чисел, и для предыдущего числа Фибоначчи, которое на единицу меньше значения переменной n.
  3. Если условие If n>3 ложно, то значение функции GetNFibonanchi присваивается переменной GetNFib и равно сумме двух предыдущих чисел Фибоначчи.
  4. В функции GetNFib определена только одна переменная: nn. Она также является целочисленной и представляет собой аргумент функции.
  5. В условии If nn<=1 проверяется, меньше ли значение переменной nn чем 1. Если это условие истинно, то значение функции GetNFib присваивается переменной GetNFib и равно 0.
  6. Если условие If nn<=1 ложно, то значение функции GetNFib равно результату вызова функции GetNFibonanchi с аргументами 1, 0 и nn.
  7. В основной части программы вызывается функция GetNFib с аргументом 40. Результат выводится на экран с помощью функции Writeln.

Оцени полезность:

7   голосов , оценка 3.714 из 5
Похожие ответы