黑马程序员技术交流社区

标题: flag是个好东西 [打印本页]

作者: zlpiano    时间: 2015-6-15 20:54
标题: flag是个好东西
以前不知道用flag,写程序搞得很复杂,比如找出100到200之间的素数,于是用数n依次去除2到n-1,设置计数器k=0,n整除一个k就加1,最后判断k是否等于0,现在想想真是太2了,用flag轻松就解决了,只要设flag = true,一旦n被整除,设flag为false 再return,轻轻松松
作者: 朱智琳    时间: 2015-6-15 22:07
楼主,把代码贴出来学习学习
作者: zlpiano    时间: 2015-6-15 23:29
求101到200的素数个数,并列出,这个题是技术分贴的,贴出来不知道有没有违规:)

  1. class PrimeNumber
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 //计数器
  6.                 int count = 0;
  7.                
  8.                 //num初始化为101
  9.                 int num =101;
  10.                
  11.                 int[] arr = new int[100];
  12.                
  13.                 while(num<=200)
  14.                 {
  15.                         //设置标志
  16.                         boolean flag = true;
  17.                        
  18.                         for(int i=2;i<num;i++)
  19.                         {
  20.                                 if(num%i==0)
  21.                                 {
  22.                                         //若能被整除,设flag为false,跳出循环
  23.                                         flag = false;
  24.                                         break;
  25.                                 }       
  26.                         }
  27.                         //flag为true则count加1,同时存入数组
  28.                         if(flag)
  29.                         {
  30.                                 count++;
  31.                                 arr[count-1]=num;
  32.                         }
  33.                         //num自增
  34.                         num++;       
  35.                 }
  36.                 System.out.println("101到200之间的素数一共有"+count+"个,分别是:");
  37.                
  38.                 for(int i=0;i<count;i++)
  39.                 {
  40.                         System.out.print(arr[i]+"    ");
  41.                 }
  42.         }       
  43. }
复制代码





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