Java Tutorials
Encapsulation in Java OOPs with Example
What is Encapsulation in Java? Encapsulation in Java is a mechanism to wrap up variables(data) and...
In Fibonacci series, next number is the sum of previous two numbers. The first two numbers of Fibonacci series are 0 and 1.
The Fibonacci numbers are significantly used in the computational run-time study of algorithm to determine the greatest common divisor of two integers.In arithmetic, the Wythoff array is an infinite matrix of numbers resulting from the Fibonacci sequence.
The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...
//Using For Loop public class FibonacciExample { public static void main(String[] args) { // Set it to the number of elements you want in the Fibonacci Series int maxNumber = 10; int previousNumber = 0; int nextNumber = 1; System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); for (int i = 1; i <= maxNumber; ++i) { System.out.print(previousNumber+" "); /* 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 sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; } } }Output:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34Program Logic:
maxNumber
You can also generate Fibonacci Series using a While
loop in Java.
//Using While Loop public class FibonacciWhileExample { public static void main(String[] args) { int maxNumber = 10, previousNumber = 0, nextNumber = 1; System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); int i=1; while(i <= maxNumber) { System.out.print(previousNumber+" "); int sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; i++; } } }Output:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
The only difference in the program logic is use of WHILE Loop to print Fibonacci Numbers
//fibonacci series based on the user input import java.util.Scanner; public class FibonacciExample { public static void main(String[] args) { int maxNumber = 0; int previousNumber = 0; int nextNumber = 1; System.out.println("How many numbers you want in Fibonacci:"); Scanner scanner = new Scanner(System.in); maxNumber = scanner.nextInt(); System.out.print("Fibonacci Series of "+maxNumber+" numbers:"); for (int i = 1; i <= maxNumber; ++i) { System.out.print(previousNumber+" "); /* 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 sum = previousNumber + nextNumber; previousNumber = nextNumber; nextNumber = sum; } } }Program Logic:
The logic is same as earlier. Instead of hardcoding the number of elements to show in Fibonacci Series, the user is asked to write number.
//Using Recursion public class FibonacciCalc{ public static int fibonacciRecursion(int n){ if(n == 0){ return 0; } if(n == 1 || n == 2){ return 1; } return fibonacciRecursion(n-2) + fibonacciRecursion(n-1); } public static void main(String args[]) { int maxNumber = 10; System.out.print("Fibonacci Series of "+maxNumber+" numbers: "); for(int i = 0; i < maxNumber; i++){ System.out.print(fibonacciRecursion(i) +" "); } } }Output:
Fibonacci Series of 10 numbers: 0 1 1 2 3 5 8 13 21 34Program Logic:
A recursive function is one that has the capability to call itself.
fibonacciRecursion():
fibonacciRecursion (4) It will recursively call fibonacciRecursion function for values 2 and 3 fibonacciRecursion (2) \\ call for value 0 and 1 fibonacciRecursion (0) = 0 fibonacciRecursion (1) = 1 fibonacciRecursion (3) \\ It will call for 1 and 2 fibonacciRecursion (1) = 1 fibonacciRecursion (2) \\ It will call for 0 and 1 fibonacciRecursion (0) = 0 fibonacciRecursion (1) = 1
Now result is added 0+1+1+0+1=3
What is Encapsulation in Java? Encapsulation in Java is a mechanism to wrap up variables(data) and...
In this tutorial, you will learn - Display Current Date in Java SimpleDateFormat: Parse and Format...
Example#1: JavaScript Multiplication Table Create a simple multiplication table asking the user...
The String Class Java has three types of Replace methods: replace() replaceAll() replaceFirst() With...
What is Constructor in Java? CONSTRUCTOR is a special method that is used to initialize a newly...
What is JasperReports for Java? JasperReports is an open-source reporting tool for Java that is...