淘先锋技术网

首页 1 2 3 4 5 6 7

Java是一种广泛使用的编程语言,能够实现多种不同的算法和数据结构。其中,算法中的素数和问题是一个比较经典的问题。那么,在Java中,如何算出素数和呢?

public class PrimeSum {
public static void main(String[] args) {
int num = 100; // 假设求100以内的素数和
int sum = 0;
for (int i = 2; i< num; i++) {
if (isPrime(i)) {
sum += i;
}
}
System.out.println("100以内的素数和为:" + sum);
}
/**
* 判断一个数是否为素数
* @param n 要判断的数
* @return true表示是素数,false表示不是素数
*/
public static boolean isPrime(int n) {
if (n<= 1) {
return false;
}
for (int i = 2; i<= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
}

代码中,首先我们定义一个变量num,表示要求的素数和的范围。然后我们使用for循环依次判断2到num-1之间的数是否为素数,若是则将其加入到sum中。其中,isPrime()函数用来判断一个数是否为素数。判断过程中,先判断小于等于1的数,然后从2开始到n的平方根之间依次判断是否能够整除。如果能够整除,则表示该数不是素数,否则该数是素数。

运行以上代码,可以得到输出结果:“100以内的素数和为:1060”,即100以内所有素数的和为1060。