黑马程序员技术交流社区

标题: 怎样打印1--100素数之间的素数? [打印本页]

作者: 年年糕v    时间: 2015-9-30 20:35
标题: 怎样打印1--100素数之间的素数?
这里是一种素数的筛选,素数还有很多筛选方法!!
  1. public class test {
  2. public static void main(String[] args) {
  3.   int i,n,k=0;
  4.      for (n = 3; n<=100; n++) {                         //3~100的所有数
  5.          i=2;
  6.          while (i<n) {
  7.              if (n%i==0)
  8.                                  break;                                        //若能整除说明n不是素数,跳出当前循环
  9.              i++;
  10.           }
  11.       if (i==n) {                                                 //如果i==n则说明n不能被2~n-1整除,是素数
  12.              k++;                                                 //统计输出数的个数
  13.              System.out.print(i+ "\t ");
  14.              if (k %6==0)                                 //每输出5个则换行
  15.               System.out.println();
  16.          }
  17.      }
  18. }
  19. }
复制代码






作者: 0925李超月    时间: 2015-9-30 20:46
class Day04_Text {
        public static void main(String[] args) {
        //求出1-100之间的素数(只能被1和本身整除的数称为素数),输出个数和具体的数字
        /*
        思路;首先我们先把1-100全部罗列出来

        */
        int temp = 0;
                for (int a = 1;a <= 100 ;a++ ) {
                        if (a % 2 != 0 & a % 3 != 0 & a % 5 != 0 &a % 7 != 0) {
                                System.out.println(a);
                                temp++;
                        }

                }
                        System.out.println("总数为"+temp);
        }
}

作者: 0925李超月    时间: 2015-9-30 20:48
不知道对不对  
作者: 年年糕v    时间: 2015-10-1 23:18
0925李超月 发表于 2015-9-30 20:48
不知道对不对

(2),3,5,7   没有打印出来,而且这种方法的运算效率太低了,一般都不会用这种方法,而且这个方法不实用,当区间放大一点点你的判断方法就错了!!不过能这么想已经很不错了,加油!!
作者: 太子奕    时间: 2015-10-2 00:28
来看看,新手入过!!!!
作者: syusouki    时间: 2015-10-2 01:24
素数:只能被1和本身乘除的数对吧?
作者: huixue626    时间: 2015-10-2 07:22
新手路过
作者: 年年糕v    时间: 2015-10-2 20:00
syusouki 发表于 2015-10-2 01:24
素数:只能被1和本身乘除的数对吧?

对,但1既不是质数也不是合数
作者: Synaric    时间: 2015-10-2 20:19
判断数字n能不能被2~n^0.5整除就好了
作者: 任振铭    时间: 2015-10-2 20:45
素数,这么文艺范儿
作者: 年年糕v    时间: 2015-10-2 20:45
遍历到sqrt,是一种方法,希望有写好的程序
作者: 0925李超月    时间: 2015-10-12 22:01
年年糕v 发表于 2015-10-1 23:18
(2),3,5,7   没有打印出来,而且这种方法的运算效率太低了,一般都不会用这种方法,而且这个方法不 ...

恩  已经认识到方法的局限性和错误了  谢了




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