Java算法题:求素数

来源:互联网 发布:更相减损术的c语言 编辑:程序博客网 时间:2024/05/19 13:44
题目:判断101-200之间有多少个素数,并输出所有素数。

思路:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

具体代码:

 1     public Vector exp(int first, int end) { 2         Vector v = new Vector(); 3         boolean b; 4         for (int i = first; i <= end; i++) { 5             b = true;// 假设是质数 6             for (int j = 2; j < i; j++) { 7                 if (i % j == 0) { 8                     b = false; 9                     break;10                 }11             }12             if(b){13                 //保存质数14                 v.add(i);15             }16         }17         return v;18     }19     @Test20     public void test(){21         Vector v = exp(101, 200);22         System.out.println(v.size());23         System.out.println(v);24     }

输出结果:

21[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]

 

0 0