Java求出1000以内的素数
时间: 2024-06-13 12:05:30 浏览: 125
以下是Java代码,用于找出1000以内的所有素数:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int n = 1000;
for (int i = 2; i <= n; i++) {
boolean isPrime = true;
for (int j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.print(i + " ");
}
}
}
}
```
该程序使用两个嵌套的循环来查找1000以内的素数。外部循环从2开始,一直到1000。内部循环从2开始,一直到当前数字的平方根。如果当前数字可以被内部循环中的任何数字整除,则该数字不是素数。如果内部循环完成后没有找到可以整除当前数字的数字,则该数字是素数。
相关问题
java求1000以内的素数
要求1000以内的素数,可以使用以下方法来实现:
1. 创建一个空的ArrayList来存储素数。
2. 使用一个循环从2开始遍历到1000。
3. 对于每个数字,使用一个内部循环从2开始遍历到该数字的平方根。
4. 在内部循环中,检查该数字是否能被任何小于它的数字整除。如果能整除,则跳出内部循环。
5. 如果内部循环正常结束(即没有找到能整除的数字),则将该数字添加到素数列表中。
6. 循环结束后,素数列表中就包含了1000以内的所有素数。
下面是Java代码示例:
```java
import java.util.ArrayList;
public class PrimeNumbers {
public static void main(String[] args) {
ArrayList<Integer> primeNumbers = new ArrayList<>();
for (int i = 2; i <= 1000; i++) {
boolean isPrime = true;
for (int j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
primeNumbers.add(i);
}
}
System.out.println("1000以内的素数:");
for (int prime : primeNumbers) {
System.out.print(prime + " ");
}
}
}
```
java求出100以内的质数
可以使用筛法求解,以下是 Java 代码实现:
```java
public static void printPrimeNumbers(int n) {
boolean[] isPrime = new boolean[n + 1];
Arrays.fill(isPrime, true);
isPrime[0] = false;
isPrime[1] = false;
for (int i = 2; i * i <= n; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= n; j += i) {
isPrime[j] = false;
}
}
}
for (int i = 2; i <= n; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
```
调用 `printPrimeNumbers(100)` 将输出 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97。
阅读全文