可以先生成1-1000内的斐波那契数列,然后再判断每个数是否为质数。具体实现如下:

public class FibonacciPrime {
    public static void main(String[] args) {
        // 生成斐波那契数列
        List<Integer> fibonacci = new ArrayList<>();
        fibonacci.add(1);
        fibonacci.add(2);
        int i = 2;
        while (true) {
            int next = fibonacci.get(i - 1) + fibonacci.get(i - 2);
            if (next > 1000) {
                break;
            }
            fibonacci.add(next);
            i++;
        }

        // 判断每个数是否为质数并输出结果
        for (int num : fibonacci) {
            if (isPrime(num)) {
                System.out.println(num);
            }
        }
    }

    // 判断一个数是否为质数
    private static boolean isPrime(int num) {
        if (num <= 1) {
            return false;
        }
        for (int i = 2; i <= Math.sqrt(num); i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }
}

输出结果为:

2
3
5
13
89
233
``
java	在1-1000内找到满足如下两个条件的数字条件1:在斐波那契序列中出现1235813……条件2:是质数只能被1和他本身整除的数字被称为质数

原文地址: https://www.cveoy.top/t/topic/cRJS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录