java求100以内素数
时间: 2023-11-22 15:50:05 浏览: 162
以下是Java求100以内素数的代码和解释:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int i, j;
for (i = 2; i <= 100; i++) {
for (j = 2; j <= i / 2; j++) {
if (i % j == 0) {
break;
}
}
if (j > i / 2) {
System.out.println(i + "是素数!");
}
}
}
}
```
解释:
这段代码使用了两层循环,外层循环用于遍历被除数,即要判断是否为素数的数,从2开始到100结束。内层循环用于遍历除数,从2开始到被除数的一半结束。如果被除数能够被除数整除,说明它不是素数,跳出内层循环。如果内层循环正常结束,说明被除数是素数,输出它的值。
相关问题
java 求100以内素数
下面是 Java 代码,可以求解 100 以内的素数:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int n = 100;
boolean[] isPrime = new boolean[n + 1];
// 初始化为 true
for (int i = 2; i <= n; i++) {
isPrime[i] = true;
}
// 筛选素数
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 + " ");
}
}
}
}
```
输出结果为:
```
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
```
JAVA求100以内素数程序
在Java中,我们可以编写一个简单的方法来找出100以内的所有素数。素数是指只有两个正因数(1和它本身)的大于1的自然数。以下是一个常见的方法:
```java
public class PrimeNumbers {
public static void main(String[] args) {
printPrimes(100); // 打印100以内的素数
}
// 素数判断函数
public 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;
}
// 打印素数范围内的数字
public static void printPrimes(int limit) {
for (int i = 2; i < limit; i++) {
if (isPrime(i)) {
System.out.print(i + " ");
}
}
System.out.println(); // 结束打印
}
}
```
当运行`printPrimes(100)`时,这段代码将输出100以内的所有素数。这里利用了一个优化技巧,只需要检查数是否能被从2到其平方根之间的数整除,因为如果一个数有大于其平方根的因子,那么必然存在一个小于或等于其平方根的因子。
阅读全文
相关推荐














