java 打印100以内的质数
题目
质数:只能被1和它本身所整除的数。即:从2开始一直到这个数-1,都不能被这个数整除;最小的质数是2
知识点
1.System.currentTimeMillis():计算当前时间距离1970-1-1的毫秒数,返回long
2.Math.sqrt:开方,返回double
代码1
package lesson.l5_loop;//打印100以内所有质数
//质数:只能被1和它本身所整除的数。即:从2开始一直到这个数-1,都不能被这个数整除
//最小的质数是2
public class PrimeNumber1 {public static void main(String[] args) {for (int i = 2; i <= 100; i++) {boolean isPrime = true;for (int j = 2; j <= i - 1; j++) {if (i % j == 0 ) {isPrime = false;}}if (isPrime) {System.out.print(i + "\t");}}}
}
代码2
减少内层循环次数:i/2+1
package lesson.l5_loop;public class PrimeNumber2 {public static void main(String[] args) {for (int i = 2; i <=100 ; i++) {boolean isPrime=true;for (int j=2;j<=i/2+1;j++){if (i%j==0){isPrime=false;}}if (isPrime){System.out.print(i+"\t");}}}
}
代码3
使用break优化:当不是质数时,立即跳出当前循环
package lesson.l5_loop;public class PrimeNumber3 {public static void main(String[] args) {long start=System.currentTimeMillis();for (int i =2 ; i <=100 ; i++) {boolean isPrime=true;for (int j=2;j<=i/2+1;j++){if (i%j==0){isPrime=false;break;}}if (isPrime&&i!=1){System.out.print(i+"\t");}}long end=System.currentTimeMillis();System.out.println("\n"+(end-start));//52}}
代码4
使用开方i
Math.sqrt:开方
因为除以a==b,所以没必要去除以b
package lesson.l5_loop;public class PrimeNumber3 {public static void main(String[] args) {long start=System.currentTimeMillis();for (int i =2 ; i <=100 ; i++) {boolean isPrime=true;for (int j=2;j<=(int)Math.sqrt(i);j++){if (i%j==0){isPrime=false;break;}}if (isPrime){System.out.print(i+"\t");}}long end=System.currentTimeMillis();System.out.println("\n"+(end-start));//52 48}}
代码5
使用带标签的continue
package lesson.l5_loop;public class PrimeNumber4 {public static void main(String[] args) {long start = System.currentTimeMillis();label:for (int i = 2; i <= 100; i++) {for (int j = 2; j <= (int) Math.sqrt(i); j++) {if (i % j == 0) {continue label;}}System.out.print(i + "\t");}long end = System.currentTimeMillis();System.out.println("\n" + (end - start));}
}
java 打印100以内的质数相关推荐
- Java输出100以内的质数(及其代码优化详程)
文章目录 Java输出100以内的质数 重点:<代码的优化> P1:currenttimemillis方法计算运行时间 p2:优化一(针对非质数) p3:Java 中 Math.sqrt( ...
- JAVA打印300以内的质数
JAVA打印300以内的质数 package JAVA_Project_01_04;//创建一个包 //具体做法是:先把N个自然数按次序排列起来.1不是质数也不是合数,要划去.第二个数2是质数留下来, ...
- python打印100以内的素数_如何用python打印100以内的质数?
在计算机使用的过程中,计算是必不可少的.编程中含有大量的数学计算,可以帮助我们解决实际难操作的问题.有的时候我们会忘记质数是什么,之前小编向大家介绍过在python中判断质数的方法(判断数字是否为质数 ...
- python打印100以内质数_怎么用python打印100以内的质数
怎么用python打印100以内的质数 发布时间:2020-12-10 13:41:15 来源:亿速云 阅读:101 作者:小新 这篇文章将为大家详细讲解有关怎么用python打印100以内的质数,小 ...
- 打印100以内的质数
/*** 打印100以内的所有质数* 质数:只能被1和他只身整除的数*/boolean flag = true ; //true为质数,false不是质数for(int i=1;i<=100;i ...
- Java 求100以内的质数
public class TestPrime{public static void main(String[] args){boolean f=true;for(int i=2;i<99;i++ ...
- 输出100以内的质数 java
java输出100以内的质数 class Ab{public static void main(String[] args){boolean isFlag = true; //标识i是否能被j除尽,一 ...
- 用python计算100以内的素数_python-找出100以内的质数
质数:就是只能被1和本身整除的数,1除外,如2,3,5,7,11,13等等 ##求一百以内的质数(1和本身除尽的数) if __name__ == '__main__': list=[] flag=F ...
- java基础(1~100以内的质数)
java练习题 1~100以内的质数: 质数:素数,只能被1和它本身整除的自然数叫做质数; 从2开始,到这个数-1结束为止,都不能被这个数本身整除. 最小的质数是2; //100以内的质数; publ ...
最新文章
- python requests 接口测试_python+requests接口测试基础
- python爬虫软件-从零开始写Python爬虫,四大工具你值得拥有!
- (七十)Xcode5及以上对于状态栏和导航栏样式的设定方法
- OSError: [WinError 126] 找不到指定的模块————Shapely
- linux下安装微信
- SSM之一(使用idea创建一个Spring+SpringMVC的项目)
- git-下载与安装windows版本与linux版本
- php添加gd库,linux下为php添加GD库(重新编译php)
- Hive 官网函数全列表(聚合函数/日期函数/字符串函数...)
- wpf 如何让当前窗口隐藏
- 14 POJ3363 Annoying painting tool
- 详解Android中玩转高德地图
- 把数字小写转换成大写,把数字转化成英文
- 手眼标定_全面细致的推导过程
- Windows10 电源选项中没有 唤醒时需要密码
- 什么是域名解析?多线服务器怎么设置域名解析呢?
- 高德地图JavaScript根据后台坐标点绘制轨迹
- 在MS Office,Visual Basic 6和Visual Basic for Applications中解析名称
- 【练一下1】糖尿病遗传风险检测挑战赛 【讯飞开放平台】
- ZigBee定位系统与网络拓扑
热门文章
- 静态代码和动态代码的区别_无代码和低代码有哪些区别
- 解决SQL映射文件的警告提示
- 【转】WebAPI ASP.Net 发布部署中常见的两个错误未能找到 CodeDom未能加载System.Web.WebPages.Razor
- TFS多地办公时的处理
- mqtt协议详解_IoT物联网设备上云技术方案详解
- java -锁(公平、非公平锁、可重入锁【递归锁】、自旋锁)
- php云解析播放器,xyplay云解析PHPV3.4.1优化稳定版视频解析
- 安装mlxtend_python机器学习包mlxtend的安装和配置详解
- 【HihoCoder - 1502】最大子矩阵(二维前缀和,尺取)
- 【HihoCoder - 1851】D级上司 (树形图,dfs)