Java 寻找1-1000内满足斐波那契数列和质数条件的数字
Java 寻找1-1000内满足斐波那契数列和质数条件的数字
本文将使用 Java 代码实现寻找 1-1000 内同时满足斐波那契数列和质数条件的数字。
条件:
- 条件1: 在斐波那契序列中出现 (1, 2, 3, 5, 8, 13……)
- 条件2: 是质数 (只能被 1 和它本身整除的数字被称为质数)
实现思路:
- 生成 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
代码解析:
- 代码首先生成一个包含 1-1000 内斐波那契数的列表
fibonacci。 - 使用循环遍历
fibonacci列表,并调用isPrime方法判断每个数字是否为质数。 isPrime方法用于判断一个数是否为质数。它首先判断输入数字是否小于等于 1,如果小于等于 1 则不是质数。然后循环遍历从 2 到该数字的平方根,如果该数字可以被任何数整除,则它不是质数。- 如果数字满足质数条件,则输出该数字。
通过以上代码,我们可以轻松地找到 1-1000 内满足斐波那契数列和质数条件的数字。
原文地址: https://www.cveoy.top/t/topic/kgly 著作权归作者所有。请勿转载和采集!