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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2016-4-4 00:15  /  1473 人查看  /  23 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 yaolv7 于 2016-4-4 13:20 编辑

分析:
                1、2是最小的,也是唯一的偶数素数,所以,除了2以外的所有偶数都可以排除
                2、大于1的,并且只能被1和其本身整除的数叫素数,所以,当一个大于1的整数,
                   模以小于它的所有奇数等于0时 , 如果这个整数和它本身相等,那么这个整数就是素数。
  1.         public static void print(int a){
  2.                                 int j;
  3.                                 int count = 1;
  4.                                 System.out.print(2 + "\t" );

  5.                                 for (int i = 3; i < a; i+=2) {
  6.                                         for ( j = 3; j < i; j+=2) {
  7.                                                 if (i % j == 0)
  8.                                                         break;
  9.                                         }
  10.                                         if (j == i) {
  11.                                                 System.out.print(i + "\t");
  12.                                                 count++;
  13.                                                 if(count % 5 == 0)
  14.                                                         System.out.println();
  15.                                         }
  16.                                 }
  17.                         }
复制代码



同菜鸟
回复 使用道具 举报
  1. for( int i; i < 10; a++) {
  2.    //int i直接写里面就行了, 不用在外面
  3. }
复制代码

  1. for(初始化表达式;条件表达式;循环后的操作表达式)  {
  2.                         循环体;
  3.           }
复制代码

评分

参与人数 1黑马币 +2 收起 理由
洋葱头头 + 2

查看全部评分

回复 使用道具 举报 1 0
本帖最后由 yaolv7 于 2016-4-4 22:10 编辑

感觉这样更好


  1. public static void printPrimeNumber(int a){
  2.                         
  3.                         System.out.print(2 + "\t" );                        //2是唯一的偶数素数,先打印
  4.                         int count = 1;                                                        //定义计数器

  5.                         outer: for (int i = 3; i < a; i+=2) {
  6.                                 for (int j = 3; j < i; j+=2) {
  7.                                         if (i % j == 0)
  8.                                                 continue outer;            //区别
  9.                                 }        //内循环结束
  10.                                 System.out.print(i + "\t");
  11.                                        
  12.                                 count++;
  13.                                 if(count % 5 == 0)
  14.                                         System.out.println();
  15.                                 
  16.                         }        //外循环结束
  17.                         System.out.println("\n" + a + "以内的素数一共有:" + count + "个")
  18.                 }
复制代码
回复 使用道具 举报
Feboam 发表于 2016-4-4 20:43
还没学多久 所以有些东西不很熟悉是

这完全就是用基础前4天的内容就能写出来的,我也才学4天的内容...
回复 使用道具 举报
Feboam 发表于 2016-4-4 22:16
逗我 你那个调用了方法      哈哈      先前不懂什么计数器 没经验

方法调用就是第4天学的呢,哥们,少看视频,多敲代码,
那什么,键盘敲烂,月薪过万
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马