黑马程序员技术交流社区

标题: 50道题,第二题自己写的,帮忙再优化优化 [打印本页]

作者: czhmike    时间: 2015-4-26 17:14
标题: 50道题,第二题自己写的,帮忙再优化优化
/*程序2
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。*/

class Prog2 {
        public static void main(String[] args) {
                System.out.println("101到200之间有"+CountDemo()+"个素数");
        }
        public static int CountDemo() {//定义一个静态方法
        int count = 0; //把要存计数个数的变量初始化为零
        for (int x = 101; x<200; x++)  {
                for (int y = 2;y<(x/2) ; y++) {
                        if (x%y==0) //判断:x从2一直除到x/2,一旦遇到能整除的数跳出循环
                                break;
            else {
                                if (y==x/2-1) {// 从2一直到x/2-1不能被整除,说明这个数是素数,打印出来,并计数一次
                    System.out.println (x);
                                   count++;
                             }
                     }       
                 }
          }
           return count;   
        }
      
}
作者: 纳海百川    时间: 2015-4-26 23:34
int count = 0;
for( int i  =101; i<=200; i++){
       boolean falg = true;
      for(int y = 2; y<i ;y++){
             if(i%y==0){
                 falg = false;
                 break;
             }
      }
      if(falg){
          count++;
      }
}
return count;
不好意思懒了哈;直接在框里写的代码;格式不太标准
作者: fc389119336    时间: 2015-4-27 16:20
素数?好吧。我已然忘记素数的概念了。




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