题目内容:
我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。
现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
注意,是第n个素数到第m个素数之间的所有的素数,并不是n和m之间的所有的素数。
输入格式:
两个整数,第一个表示n,第二个表示m。
输出格式:
一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入样例:
2 4
输出样例:
15
时间限制:500ms内存限制:32000kb
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int a=in.nextInt();
int b=in.nextInt();
int index=1;
int temp=0;
int sum=0;
int[]arr=new int[200];
arr[0]=2;
int count=1;
int i=3;
while(count<200) {
for(int j=0;j<index;) {
if(i%arr[j]==0) {
break;
}
else {
temp++;
j++;
}
}
if(temp==index) {
arr[index]=i;
index++;
count++;
temp=0;
}
else {
temp=0;
}
i++;
}
for(;a<=b;a++) {
sum=sum+arr[a-1];
}
System.out.println(sum);
in.close();
}
}