A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*程序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;   
        }
      
}

2 个回复

正序浏览
素数?好吧。我已然忘记素数的概念了。
回复 使用道具 举报
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;
不好意思懒了哈;直接在框里写的代码;格式不太标准
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马