The Fibonacci sequence is a series of numbers where a number is the sum of previous two numbers. Starting with 0 and 1, the sequence goes 0, 1, 1, 2, 3, 5, 8, 13, 21, and so on. Here we will write three programs to print fibonacci series 1) using for loop 2) using while loop 3) based on the number entered by user

To understand these programs, you should have the knowledge of for loop and while loop.

If you are new to java, refer this java programming tutorial to start learning from basics.

## Example 1: Program to print fibonacci series using for loop

public class JavaExample { public static void main(String[] args) { int count = 7, num1 = 0, num2 = 1; System.out.print("Fibonacci Series of "+count+" numbers:"); for (int i = 1; i <= count; ++i) { System.out.print(num1+" "); /* On each iteration, we are assigning second number * to the first number and assigning the sum of last two * numbers to the second number */ int sumOfPrevTwo = num1 + num2; num1 = num2; num2 = sumOfPrevTwo; } } }

Output:

Fibonacci Series of 7 numbers:0 1 1 2 3 5 8

## Example 2: Displaying Fibonacci Sequence using while loop

public class JavaExample { public static void main(String[] args) { int count = 7, num1 = 0, num2 = 1; System.out.print("Fibonacci Series of "+count+" numbers:"); int i=1; while(i<=count) { System.out.print(num1+" "); int sumOfPrevTwo = num1 + num2; num1 = num2; num2 = sumOfPrevTwo; i++; } } }

Output:

Fibonacci Series of 7 numbers:0 1 1 2 3 5 8

## Example 3: Program to display the fibonacci series based on the user input

This program display the sequence based on the number entered by user. For example – if user enters 10 then this program displays the series of 10 numbers.

import java.util.Scanner; public class JavaExample { public static void main(String[] args) { int count, num1 = 0, num2 = 1; System.out.println("How may numbers you want in the sequence:"); Scanner scanner = new Scanner(System.in); count = scanner.nextInt(); scanner.close(); System.out.print("Fibonacci Series of "+count+" numbers:"); int i=1; while(i<=count) { System.out.print(num1+" "); int sumOfPrevTwo = num1 + num2; num1 = num2; num2 = sumOfPrevTwo; i++; } } }

Output:

How may numbers you want in the sequence: 6 Fibonacci Series of 6 numbers:0 1 1 2 3 5

Checkout these related Java programs:

Amy says

Need the same for first 10 numbers of Fibonacci series

Afzal Hamdulay says

Why we have used the value of i=1 and not i=0 and what will happen if we take i=0?

Raja says

if you take i = 0 it also right but in case of that –

case 1. in for loop for loop if you take i = 0; you have to take the for loop till count not equals to.

syntax : for(i = 0; i < count; ++i){}

case 2. in case of while loop also –

syntax : int i = 0;

while(i < count){}

I hope it would be helpful for you. taking input as 0 is not wrong but in that case the loop goes upto the previous number of the limit but doesn't upto the number.

K.M.T says

Because if we start from i=0, the program executes 1 more time than required. Just count from 0 to a specific no. and from 1 to a specific no. You will find the difference

Bagaskara Wisnu Gunawan says

Let’s use example 1 as a test case. When you assign i=0 for the loop, it will then loop from 0 to 7 which is 8 times (0, 1, 2, 3, 4, 5, 6, 7), so we need to assign i=1 and the looping count is right.

Likitha says

Good and smartðŸ™‚

Andrew says

if you are to use i=0 then in the while loop you put i<count

Naseer ullah says

Because Fibonacci series is start from 0.

StigaICE says

What does it mean to have a blank string in System.out.println(” “);

From solution 1, System.out.println(num1 + ” “);

Abishek M says

THE entire code is being printed in the Run Time Window. So, please make the necessary corrections and publish the same again ! Appreciate the effort.

joe says

It really bothers me why i cannot figure out where the second ‘1’ in the 0 ,1 ,1 …. sequence comes from within the code

Pidva says

Why use sumOfPrevTwo ?

Vigneshram says

We can use i=0 and i<7

looping is also correct for me it from 0 to 6(7 values)

anonymous says

Program to display the fibonacci series based on the user input and its sum??