给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。注意,是第n个素数到第m个素数之间的所有的素数,并不是n和m之间的所有的素数。
package sumOfPrimeNumber;
import java.util.Scanner;
public class SumOfPrimeNumber {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int[] prime = new int[200];
int m,n;
System.out.println("输入从第几个素数开始:");
m = in.nextInt();
System.out.println("输入到几个素数结束:");
n = in.nextInt();
int num = 2;
int j = 0;
while(true) {
int flag = 0;
double k = Math.sqrt(num);
for(int i=2;i<=k;i++) {
if(num % i == 0)
flag = 1;
}
if(flag == 0) {
prime[j] = num;
j++;
}
num++;
if(j == 200) {
break;
}
}
int sum = 0;
for(j=m;j<=n;j++) {
sum = sum + prime[j-1];
}
System.out.printf("从第%d个素数到第%d个素数之间所有素数的和为:",m,n);
System.out.println();
System.out.println(sum);
in.close();
}
}