# Print first n Fibonacci Numbers using direct formula

• Last Updated : 29 Oct, 2021

Given a number n, the task is to print first n Fibonacci numbers.
Prerequisite : Program to print first n Fibonacci Numbers | Set 1

Examples :

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

```Input : 7
Output :0 1 1 2 3 5 8

Input : 5
Output :0 1 1 2 3```

N-th Fibonacci Number = [(1 + âˆš5)n – (1 – âˆš5)n)] / [2n * âˆš5]

Below is the implementation.

## C++

 `// C++ code to print fibonacci``// numbers till n using direct formula.``#include``using` `namespace` `std;` `// Function to calculate fibonacci``// using recurrence relation formula``void` `fibonacci(``int` `n){``    ``long` `long` `int` `fib;``    ``for` `( ``long` `long` `int` `i = 0; i < n; i++)``    ``{``        ``// Using direct formula``        ``fib = (``pow``((1 + ``sqrt``(5)), i) -``               ``pow``((1 - ``sqrt``(5)), i)) /``              ``(``pow``(2, i) * ``sqrt``(5));``              ` `        ``cout << fib << ``" "``;``    ``}``}` `// Driver code``int` `main()``{``    ``long` `long` `int` `n = 8;   ``    ``fibonacci(n);   ``    ``return` `0;``}`

## Java

 `// Java code to print fibonacci``// numbers till n using direct formula.` `class` `GFG{` `// Function to calculate fibonacci``// using recurrence relation formula``static` `void` `fibonacci(``double` `n){``    ``double` `fib;``    ``for` `(``double` `i = ``0``; i < n; i++)``    ``{``        ``// Using direct formula``        ``fib = (Math.pow((``1` `+ Math.sqrt(``5``)), i) -``            ``Math.pow((``1` `- Math.sqrt(``5``)), i)) /``            ``(Math.pow(``2``, i) * Math.sqrt(``5``));``            ` `        ``System.out.print((``int``)fib+``" "``);``    ``}``}` `// Driver code``public` `static` `void` `main(String[] args)``{``    ``double` `n = ``8``;``    ``fibonacci(n);``}``}``// This code is contributed by mits`

## Python3

 `# Python3 code to print fibonacci``# numbers till n using direct formula.``import` `math` `# Function to calculate fibonacci``# using recurrence relation formula``def` `fibonacci(n):` `    ``for` `i ``in` `range``(n):``        ``# Using direct formula``        ``fib ``=` `((``pow``((``1` `+` `math.sqrt(``5``)), i) ``-``                ``pow``((``1` `-` `math.sqrt(``5``)), i)) ``/``               ``(``pow``(``2``, i) ``*` `math.sqrt(``5``)));``                ` `        ``print``(``int``(fib), end ``=` `" "``);` `# Driver code``n ``=` `8``;``fibonacci(n);` `# This code is contributed by mits`

## C#

 `// C#  code to print fibonacci``// numbers till n using direct formula.\` `using` `System;` `public` `class` `GFG{``    ` `// Function to calculate fibonacci``// using recurrence relation formula``static` `void` `fibonacci(``double` `n){``    ``double` `fib;``    ``for` `(``double` `i = 0; i < n; i++)``    ``{``        ``// Using direct formula``        ``fib = (Math.Pow((1 + Math.Sqrt(5)), i) -``            ``Math.Pow((1 - Math.Sqrt(5)), i)) /``            ``(Math.Pow(2, i) * Math.Sqrt(5));``            ` `        ``Console.Write((``int``)fib+``" "``);``    ``}``}` `// Driver code``    ``static` `public` `void` `Main (){``            ``double` `n = 8;``            ``fibonacci(n);``}``}``// This code is contributed by ajit.`

## PHP

 ``

## Javascript

 ``
Output:
`0 1 1 2 3 5 8 13`

Note : The above program is costly compared to method 1 as it causes power computations in floating point. Also, it may not work perfect due to floating point precision errors.

My Personal Notes arrow_drop_up