zoukankan      html  css  js  c++  java
  • Java之判断一个数是否为素数

    public class PrimeNumberTest {
        public static void main(String[] args) {
            long start = System.currentTimeMillis();
            System.out.println(isPrimeNumber(29));
            printNum(1000);
            long end = System.currentTimeMillis();
            System.out.println("
    Time spent: " + (end - start));
        }
    
        static boolean isPrimeNumber(int number) { //判断是否为素数
            int sqrt = (int) Math.sqrt(number);
            for (int j = 2; j <= sqrt; j++)  //从2到number的算术平方根迭代
                if (number / j * j == number) //判断j是否为number的因数, 是的话, 则number为合数, flag值变为false;
                    return false;
            return true;
        }
    
        static void printNum(int number) { //打印出 <= number的所有质数
            int j = 0;
            for (int i = 2; i <= number; i++)
                if (isPrimeNumber(i) == true) {
                    System.out.printf("%-9d", i);
                    j++;
                    if (j % 10 == 0) //每隔十个数字换行
                        System.out.println();
                }
        }
    }

    运行结果:

    true
    2        3        5        7        11       13       17       19       23       29       
    31       37       41       43       47       53       59       61       67       71       
    73       79       83       89       97       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      
    Time spent: 140
    苟利国家生死以, 岂因祸福避趋之
  • 相关阅读:
    转:wap1.1和wap2.0的比较~
    转:alidateRequest=false 在.Net 4.0 中不管用
    ASP.NET页面实时进行GZIP压缩优化
    转:WAP1.0 和 WAP2.0 支持的标签区别
    [转载]利用vs.net快速开发windows服务(c#)
    CSS3选择器
    AD10 多层板设计错误解决
    ASP如何获取客户端真实IP地址
    javascript模拟滚动条实现代码(3)
    最近工作中的小细节
  • 原文地址:https://www.cnblogs.com/chintsai/p/10117057.html
Copyright © 2011-2022 走看看