1素数和(5分)

2017-12-20  本文已影响0人  Ming_0612

题目内容:
我们认为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();
    }
}
上一篇下一篇

猜你喜欢

热点阅读