Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

주어진 숫자가 피보나치 숫자인지 확인하는 Java 프로그램?

<시간/>

다음은 주어진 숫자가 피보나치인지 확인하는 Java 프로그램입니다 -

public class Demo{
   static boolean perfect_square_check(int val){
      int s = (int) Math.sqrt(val);
      return (s*s == val);
   }
   static boolean fibonacci_num_check(int n){
      return perfect_square_check(5*n*n + 4) || perfect_square_check(5*n*n - 4);
   }
   public static void main(String[] args){
      for (int i = 6; i <= 17; i++)
      System.out.println(fibonacci_num_check(i) ? i + " is a Fibonacci number" :
      i + " is a not Fibonacci number");
   }
}

출력

6 is a not Fibonacci number
7 is a not Fibonacci number
8 is a Fibonacci number
9 is a not Fibonacci number
10 is a not Fibonacci number
11 is a not Fibonacci number
12 is a not Fibonacci number
13 is a Fibonacci number
14 is a not Fibonacci number
15 is a not Fibonacci number
16 is a not Fibonacci number
17 is a not Fibonacci number

Demo라는 클래스는 정수 값을 매개변수로 사용하는 정적 부울 함수를 정의합니다. 값의 제곱근을 확인하고 다른 값에 할당합니다. 제곱근에 제곱근을 곱한 값이 전달된 값과 같으면 반환됩니다.

다음으로 이전 함수를 호출하는 또 다른 부울 정적 함수가 정의됩니다. 메인 함수에서는 시작 번호와 끝 번호를 반복하며, 모든 번호가 피보나치 수인지 확인함과 동시에 해당 메시지가 출력됩니다.