黑马程序员技术交流社区

标题: 求素数的题 [打印本页]

作者: biu    时间: 2016-4-3 00:09
标题: 求素数的题
看到有小伙伴问类似的题,我就把自己的代码粘过来分享下
package com.heima.test;
public class Test02 {

        /**
         * 需求:1-100之间有多少该素数,并打印所有的素数
         * 判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数
         *
         */
        public static void main(String[] args) {
                //1.定义计数器
                int count = 0;
                //2.利用for循环遍历
                for(int i = 2;i<100;i++) {
                        int temp = (int) Math.sqrt(i);                        //sqrt(double a) 返回正确舍入的 double 值的正平方根。
                        int j = 2;
                        for(;j<=temp;j++) {
                                if(i%j==0){
                                        break;
                                }
                        }
                        //3.j>temp说明是素数,然后进行统计打印
                        if(j>temp) {
                                count++;
                                System.out.print(i+" ");
                                if(count%5==0) {
                                        System.out.println();
                                }
                        }
                }
                System.out.println();
                System.out.println("1-100的素数个数为:"+count);
        }
}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2