Advertisement
klippa

Fibonacci

Aug 17th, 2022
867
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.73 KB | None | 0 0
  1. using System;
  2.  
  3. public class Program
  4. {
  5.     public static void Main()
  6.     {
  7.         // 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...
  8.         Console.WriteLine(FibonacciA(0));
  9.         Console.WriteLine(FibonacciA(1));
  10.         Console.WriteLine(FibonacciA(6));
  11.  
  12.         Console.WriteLine(FibonacciB(0));
  13.         Console.WriteLine(FibonacciB(1));
  14.         Console.WriteLine(FibonacciB(6));
  15.     }
  16.  
  17.     // iterative approach
  18.     public static int FibonacciA(int n)
  19.     {
  20.         var a = 0;
  21.         var b = 1;
  22.  
  23.         if (n == 0) return a;
  24.  
  25.         for (var i = 2; i <= n; i++)
  26.         {
  27.             var c = a + b;
  28.             a = b;
  29.             b = c;
  30.         }
  31.  
  32.         return b;
  33.     }
  34.  
  35.     // recursive approach w/o memoization
  36.     public static int FibonacciB(int n)
  37.     {
  38.         return n <= 1 ? n : FibonacciB(n - 1) + FibonacciB(n - 2);
  39.     }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement