黑马程序员技术交流社区

标题: 黑马程序员 初学者求教 编程打印所有3位质数! [打印本页]

作者: 北极雪871208    时间: 2014-3-21 16:57
标题: 黑马程序员 初学者求教 编程打印所有3位质数!
---------------------- <a target="blank">ASP.Net+Unity开发</a>、<a target="blank">.Net培训</a>、期待与您交流! ----------------------
小弟万分感激!

---------------------- <a target="blank">ASP.Net+Unity开发</a>、<a target="blank">.Net培训</a>、期待与您交流! ----------------------

作者: my_heima    时间: 2014-3-21 17:19
小弟也是新手,结合网上编了点相关程序,希望对楼主有所帮助。
//求所有三位数的质数
public class Test
{
    public static void main(String[] args)
        {
          //循环100-999以内的数,最小三位数,最大三位数。
          for (int n=100;n<=999;n++)
                {
                           //给b初始值true
                           boolean b = true;
                           //如果循环拿到的数n不等于1,就进入下面循环
                           if (n != 1 )
                        {
                                        //i从大于1的第一个数也就是2开始,一次循环到比这个数n本身小的最大的数
                                        //何为质数,除了1和他本身不能再被其他数整除。所以...这样循环
                                        for (int i = 2; i < n; i++)
                                        {
                                                 if (n % i == 0)
                                                {
                                                        //如果取余为0,也就是除了1和其本身有其他数可以乘除他,所以置为false
                                                          b = false;
                                                          //跳出当前循环,判断是否打印,并且到外面循环继续
                                                          break;
                                                }
                 
                                        }
                                 }
                           //如果b为true打印下面的质数
                           if (b)
                                {
                                        System.out.println(n + "是质数");
                                }
                        }
     }
}


作者: 青木郎    时间: 2014-3-21 17:37
class  Test
{
        public static void main(String[] args)
        {
                int count = 0;
                for (int i=100;i<=999;i++ )
                {
                        for (int j=2;j<i/2 ;j++ )
                        {
                                if(i%j==0)
                                {
                                        count++;
                                }
                               
                        }
                        if (count == 0)
                        {
                                System.out.print(i+"        ");
                        }
                        else
                                count = 0;
                }
        }
}
101     103     107     109     113     127     131     137     139     149
151     157     163     167     173     179     181     191     193     197
199     211     223     227     229     233     239     241     251     257
263     269     271     277     281     283     293     307     311     313
317     331     337     347     349     353     359     367     373     379
383     389     397     401     409     419     421     431     433     439
443     449     457     461     463     467     479     487     491     499
503     509     521     523     541     547     557     563     569     571
577     587     593     599     601     607     613     617     619     631
641     643     647     653     659     661     673     677     683     691
701     709     719     727     733     739     743     751     757     761
769     773     787     797     809     811     821     823     827     829
839     853     857     859     863     877     881     883     887     907
911     919     929     937     941     947     953     967     971     977
983     991     997
作者: 上官睿鹏    时间: 2014-3-21 17:41
本帖最后由 上官睿鹏 于 2014-3-21 17:42 编辑
  1. class Demo
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 for(int i=100; i<1000; i++)
  6.                 {
  7.                         for(int j=2; j<i/2; j++)
  8.                         {
  9.                                 if(i%j == 0)
  10.                                         break;
  11.                                 if(j == i/2-1)
  12.                                         System.out.print(i + ", ");
  13.                         }
  14.                 }
  15.         }
  16. }
复制代码
这个应该挺好理解的吧
  1. <blockquote>class Demo
复制代码

作者: 北极雪871208    时间: 2014-3-21 19:11
上官睿鹏 发表于 2014-3-21 17:41
这个应该挺好理解的吧

恩恩!明白了,多谢!:)




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