//比1大的整数中,除了1和它本身以外,不再有别的因数,这种整数叫做质数或素数private static void testSushu() {List<String> sushuList = new ArrayList<String>();int num = 1000;int j;boolean isSushu;for (int i = 2; i <= num; i++) {//找2~1000之间素数//备注:这里加上这个判断其实有些时候也不一定会提升性能很明显,加了判断本身也是需要消耗计算机资源。数量比较大,提升会比较明显if(i == 1 || (i % 2 == 0 && i != 2 ) )  continue; //偶数和1排除isSushu = true;for (j = 2; j < i; j++) {//当前循环变量2~i的数,能否被i整除,如果能,表明不是素数if (i % j == 0) {isSushu = false;break;}}//打印if ( isSushu) {sushuList.add(i+"");}}System.out.println("数量:" + sushuList.size());System.out.print("元素:");for (String str : sushuList) {System.out.print(str + "   ");}}//除2private static void testSushu2() {List<String> sushuList = new ArrayList<String>();int num = 1000;int j;boolean isSushu;for (int i = 2; i <= num; i++) {//备注:这里加上这个判断其实有些时候也不一定会提升性能很明显,加了判断本身也是需要消耗计算机资源。数量比较大,提升会比较明显if(i == 1 || (i % 2 == 0 && i != 2 ) )  continue; //偶数和1排除isSushu = true;for (j = 2; j <= i/2 ; j++) {//这里比上一步:性能提升一倍,主要考虑2 ~ i/2之间的数,如果找到一个数j能被i整除,表明不是素数if (i % j == 0) {isSushu = false;break;}}//打印if (isSushu) {sushuList.add(i+"");}}System.out.println("数量:" + sushuList.size());System.out.print("元素:");for (String str : sushuList) {System.out.print( str + "   ");}}//开方:最高效private static void testSushu3() {List<String> sushuList = new ArrayList<String>();int num = 1000;int j;boolean isSushu;for (int i = 2; i <= 1000; i++) {//备注:这里加上这个判断其实有些时候也不一定会提升性能很明显,加了判断本身也是需要消耗计算机资源。数量比较大,提升会比较明显if(i == 1 || (i % 2 == 0 && i != 2 ) )  continue; //偶数和1排除isSushu = true;for (j = 2; j <= Math.sqrt(i); j++) {if (i % j == 0) {isSushu = false;break;}}if (isSushu) {sushuList.add(i+"");}}System.out.println("数量:" + sushuList.size());System.out.print("元素:");for (String str : sushuList) {System.out.print( str + "   ");}}

java求素数的方式相关推荐

  1. java - 求素数

    求素数,求出设定范围内所有的素数并进行控制台输出,输出101-200之间的所有素数 素数曾称质数.一个大于1的正整数,如果除了1和它本身以外,不能被其他正整数整除,就叫素数 结果演示 代码演示 pac ...

  2. Java求素数(质数)的几种方法

    什么是素数(质数)? 比1大的整数中,除了1和它本身以外,不再有别的因数,这种整数叫做质数或素数 思想,怎么做才能高效? 要判断X是否为质数,就从2一直尝试到x-1的做法效率是最差的! 其实只要从2一 ...

  3. 用java语编写求素数程序_java求素数代码

    public static void main(String args[]) { int i,n,flag; { 1.程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数),如果能被整 ...

  4. java求小于n的素数_java_Java实现求小于n的质数的3种方法,质数概念 质数,又称素数, - phpStudy...

    Java实现求小于n的质数的3种方法 质数概念 质数,又称素数,指在一个大于1的自然数中,除了1和此整数自身外,无法被其他自然数整除的数(也可定义为只有1和本身两个因数的数). 最小的素数是2,也是素 ...

  5. 求素数的三大算法 —— Java 篇

    求素数的三大算法 -- Java 篇 文章目录 求素数的三大算法 -- Java 篇 算法一 :暴力遍历 思路: 代码: 结果: 算法二:折半范围遍历 思路: 代码: 结果: 算法三:根号范围遍历 思 ...

  6. Java中求素数的两种方法

    *如何求素数? ** 比1大的整数中,除了1和它本身以外,不再有别的因数,这种整数叫做质数或素数. 所以我们只需要在2~n-1的数中,能找到一个数能整除n,则n为素数. 所以用两个循环遍历就可以得到素 ...

  7. 用java求1000之内的素数_java求1000以内的素数

    .out.println("周长为:"+ bianChang*4); System.out.println("面积为:"+ bianChang*bianChan ...

  8. java语言中如何表示素数,使用Java语言求素数的几个方法

    使用Java语言求素数的几个方法 今天找了一篇"面试50题"的文档,第一题是求fibonacci数列,使用递归很容易就实现了,没什么难度. 第二题是输出101~200之间的素数,没 ...

  9. Java用“埃氏筛法”求素数

    用"埃氏筛法"求素数. 先去掉2的倍数,再去掉3的倍数,再去掉4的倍数,--依此类推,最后剩下的就是素数. 要求:使用数组,使用数组的长度,使用增强的for语句 import ja ...

最新文章

  1. Go 知识点(17)— go 工具链 go test 使用
  2. HDU - 5875 2016 ACM/ICPC 大连网络赛 H题 暴力
  3. 项目范围和项目范围管理
  4. 局部保留投影(LPP)推导
  5. 【Linux】35. python脚本重命名各子目录下的图片
  6. 【机器学习算法专题(蓄力计划)】二、机器学习中的统计学习方法概论
  7. 【笔试面试题】腾讯2013实习生面试算法题及参考答案
  8. 5、Fiddler如何捕获HTTPS会话
  9. 屏保延迟启用密码保护
  10. push推送服务设计
  11. iOS开发--字典(NSDictionary)和JSON字符串(NSString)之间互转
  12. Python基础学习(二)
  13. java执行php代码块_Java示例讲解普通代码块以及静态代码块的执行顺序
  14. linux格式化ext4分区工具,硬盘格式化ext4软件 硬盘格式化ext4
  15. PMP备考之路 - 汪博士第六章(项目进度管理)
  16. 如何调整液晶显示器保护你的视力
  17. mysql中explain执行结果中的rows是什么意思?
  18. Git详解之特殊配置与钩子应用
  19. 如何修改命令提示符(cmd)的颜色?
  20. 淮南师范学院计算机组成原理试卷,淮南师范学院2008-2009学年度第一学期电机及拖动试卷(2份,有答案)...

热门文章

  1. android java 面试题及答案_android面试题及答案
  2. 什么叫超融合基础架构?
  3. Java Web实现用户注册页面的提交
  4. java使用poi生成Excel文件并合并单元格
  5. 2023 年值得关注的 7 大人工智能 (AI) 技术趋势
  6. Java 中 Boolean 和 boolean的默认值和修改默认值
  7. idea 断点线程_在IntelliJ IDEA中多线程并发代码的调试方法详解
  8. 猿创征文|工具百宝箱-代码编辑器-版本控制工具-终端神器-项目与事务跟踪工具-SFTP客户端
  9. remote couldn‘t create file: Read-only file system (remount failed)解决方法
  10. java未来发展潜力_Java语言未来是否还有发展前景