素数求和问题

描述现在给你N个数(0<N<1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。

 
输入
第一行给出整数M(0<M<10)代表多少组测试数据
每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000
输出
每组测试数据结果占一行,输出给出的测试数据的所有素数和
样例输入
3
5
1 2 3 4 5
8
11 12 13 14 15 16 17 18
10
21 22 23 24 25 26 27 28 29 30
样例输出
10
41
52

 1 import java.util.Scanner;
 2 
 3 class Sushu{
 4     public boolean sushu(int number){
 5         int i;
 6         int flag;
 7         
 8         if(number<2)
 9             return false;
10         
11         flag=0;
12         for(i=2;i*i<=number;i++){
13             if(number%i==0){
14                 flag=1;
15                 break;
16             }
17         }
18         
19         if(flag==0)
20             return true;
21         
22         else
23             return false;
24     }
25 }
26 
27 public class Main {
28     public static void main(String[] args) {
29         int T;
30         Scanner scanner=new Scanner(System.in);
31         int n;
32         int i;
33         int number;
34         int sum;
35         Sushu judgeSushu=new Sushu();
36         
37         T=scanner.nextInt();
38         while(true){
39             if(T==0)
40                 break;
41             T--;
42             
43             n=scanner.nextInt();
44             
45             sum=0;
46             for(i=1;i<=n;i++){
47                 number=scanner.nextInt();
48                 
49                 if(judgeSushu.sushu(number)==true)
50                     sum+=number;
51             }
52             System.out.println(sum);
53         }
54     }
55 }

 

 
posted @ 2014-11-29 01:44  zqxLonely  阅读(197)  评论(0编辑  收藏  举报