1素数和(5分)
题目内容:
我们认为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) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
int sum = 0;
if(n>0&&n<=m&&m<=200)
{
int[]isprimes=new int[m];
isprimes[0]=2;
int cnt=1;
main://给下面这个for命名为main
for(int b=2;cnt<m;b++)//cnt是目前数组中存的个数和应该存第几个
{
for(int i=0;i<cnt;i++)
{
if(b%isprimes[i]==0)
{
continue main;
}
}
isprimes[cnt++]=b;
}
for (int i = n-1 ; i <= m-1 ; i++)
{
sum+=isprimes[i];
}
System.out.println(sum);
}
else
{
System.out. println("您输入的数字格式不对。");
}
in.close();
}
}