w3resource

Java: Check if a given number is Fibonacci number or not


Check Fibonacci Number

Write a Java program to check if a given number is a Fibonacci number or not.

Sample Solution:

Java Code:

import java.util.*;

class solution {
  static boolean isPerfectSquare(int x)
    {
       int s = (int) Math.sqrt(x); 
       return (s*s == x);
     }
  
   static boolean isFibonacci(int x)
      {
         return isPerfectSquare(5*x*x + 4) ||
           isPerfectSquare(5*x*x - 4);
     }

    public static void main(String[] args)
    {   
      Scanner scan = new Scanner(System.in);
      System.out.print("Input a number: ");
      int n = scan.nextInt();	       
	  if (n>0)
		{	
		 System.out.println("Is Fibonacci number? "+isFibonacci(n)); 
		}         
   }
}

Sample Output:

Input a number:  55
Is Fibonacci number? true

Flowchart:

Flowchart: Check if a given number is Fibonacci number or not.



For more Practice: Solve these Related Problems:

  • Write a Java program to check if a number is in the Fibonacci sequence using an iterative approach.
  • Write a Java program to determine if a given number is Fibonacci by verifying if 5*n²+4 or 5*n²-4 is a perfect square.
  • Write a Java program to recursively generate Fibonacci numbers until exceeding a given input and then check for equality.
  • Write a Java program to use a mathematical formula to decide whether a number is Fibonacci and output a boolean result.

Go to:


PREV : Prime Factors of Number.
NEXT : Excel Column from Number.


Java Code Editor:

Contribute your code and comments through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.