How to find the first 10 prime Fibonacci numbers in Java

1 Answer

0 votes
public class PrimeFibonacci {

    static boolean isPrime(long n) {
        if (n < 2) return false;
        if (n == 2 || n == 3) return true;
        if (n % 2 == 0) return false;

        for (long i = 3; i * i <= n; i += 2) {
            if (n % i == 0) return false;
        }

        return true;
    }

    static long nextFib(long[] state) {
        long f = state[0];
        long next = state[0] + state[1];
        state[0] = state[1];
        state[1] = next;
        
        return f;
    }

    public static void main(String[] args) {
        long[] fibState = {1, 1};
        int count = 0;

        while (count < 10) {
            long f = nextFib(fibState);
            if (isPrime(f)) {
                System.out.print(f + " ");
                count++;
            }
        }
    }
}


/*
run:

2 3 5 13 89 233 1597 28657 514229 433494437 

*/

 



answered 10 hours ago by avibootz
edited 10 hours ago by avibootz
...