题目内容:
我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。
现在,给定两个整数n和m,0<n<=m<=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入格式:
两个整数,第一个表示n,第二个表示m。
输出格式:
一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。
输入样例:
2 4
输出样例:
15
import java.util.Scanner;
public class C3ex4 {
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 x; // 200以内的素数;
int count = 1; //素数排名第几个;
int sum = 0; //总和
int flag = 0; //标记合数,一旦出现大于0,则出现合数,则不算在排名内
if (n == 1)
{
sum = 2;
}
for(x = 2; x <= 200; x++)
{
int w = 2;
while (w < x)
{
if (x % w == 0)
{
flag++;
}
else
{
w++;
}
}
if (flag == 0)
{
count++;
}
if (count >= n && count <= m)
{
sum = sum + x;
}
}
System.out.print(sum);
in.close();
}
}
想知道这个错在哪里