博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
for循环输出素数探究【java】
阅读量:5076 次
发布时间:2019-06-12

本文共 3061 字,大约阅读时间需要 10 分钟。

一、判断953是不是为素数(质数)。

代码:

1  /** 2     判断953是不是为素数(质数) 3     分析: 4         素数指整数在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。 5         假设953是素数,则: 6         953 % 2 !== 0 7         953 % 3 !== 0 8         953 % 4 !== 0 9         ……10         953 % 952 !== 011         反推得出,只要953被2~952之间的任何一个整数整除,则953不是素数。12 13         除数从2开始到952按照整数依次递增,则用for循环表示为:14             for(int i=2;i<953;i++){15                 判断953能否被i整数16                     如果能被整除,则953不是素数,结束循环,跳出去输出“953不是素数”17                     如果不能被整除,则953是素数,结束循环,跳出去输出“953是素数”18             }19  */20  21  public class IsPrime22 {23     public static void main(String[] args){24 25         int num = 953;26         boolean isPrime = true;   // 标记数字num默认为素数27         for(int i=2;i

代码结果显示:

 

二、列出1~100之间的所有素数

代码:

1 /** 2     列出1~100之间的所有素数 3     分析: 4         上面代码片段表示判断num为953的自然数是不是素数, 5         假设num为937,则判断937是不是素数, 6         假设num为933,则判断933是不是素数, 7  8         因此将num设置为一个变量,利用for循环进行从1~100进行递增, 9         将上门的代码片段放入该for循环中,判断为素数就打印出来。10 11         for(int num=2;num<=100;num++) {12 13             判断num是不是素数的代码片段14 15         }16 17 */18 19 public class IsPrime20 {21     public static void main(String[] args){22 23         for(int num=2;num<=100;num++) {24             boolean isPrime = true; // 标记数字num默认为素数25             for(int i=2;i

代码解释说明:

代码结果显示:

 

三、列出1~100之间的所有素数,并每行显示5个数。

代码:

1 /** 2     列出1~100之间的所有素数,并每行显示5个数。 3     分析: 4         从上例代码中可以得到1~100之间的所有素数。 5         要想每行显示5个数,就是要知道每次素数得出的时候,知道它是第几个出现的,然后进行累加 6         当累加数字到5时,就换行。 7  8         因此需要用一个标记来记录每次素数输出的次数。 9 10 */11 12 public class IsPrime13 {14     public static void main(String[] args){15         16         int count = 0; // 计数器,用来在每次素数打印时,记录次数。17         for(int num=2;num<=100;num++) {18             boolean isPrime = true; // 标记数字num默认为素数19             for(int i=2;i

代码变形:计数器如果实现每5次累计之后,就置零也可以达到相应的计数效果。 将上述25行~31行代码进行置换以下代码,即可:

1 if(isPrime) {2   System.out.print(num+" ");3   count++; // 每打印一个素数就记录一次4   if(count==5) { // 计数器累计到数字5时,就换行一次5      System.out.println();6      count = 0; // 计数器进行置零7     }8 }

代码结果显示:

四、输出9*9乘法表

代码:

1 /** 2     输出显示9*9乘法表 3     1*1=1 4     1*2=2 2*2=2 5     1*3=3 2*3=6 3*3=9 6     1*4=4 2*4=8 3*4=12 4*4=16 7     …… 8     1*9=9 2*9=18 ……        ……       9*9=81 9 10     分析:按照每行和每列进行规律分析11         - 表格共9行,12         - 每第几个行输出需要共几个等式13 14         恒等式格式为 i*j=c15             · 每行i从1开始递增到j,表示为每第j行输出可以输出共i个等式16                 因此使用for循环表示为:17                 for(int i=1;i<=j;j++) {18                     ……19                 }20             · 表示第j行21                 for(int j=1;i<=9;j++) {22                     输出一行  //该循环体执行一次,就换行一次。23                 }24         因此第一个for循环体需要在第二个for循环体之内。25 */26 27 public class Test0328 {29     public static void main(String[] args) {30         for(int j=1;j<=9;j++) {31             for(int i=1;i<=j;i++){32                 System.out.print(i+"*"+j+"="+i*j+" "); // i从1~j循环显示,第j行需要显示1~j个恒等式33             }34             System.out.println();    // 每上面的i循环体执行一次结束,即该行显示完毕,就换行一次35         }36     }37 }

代码结果显示:

 

 

转载于:https://www.cnblogs.com/mujingyu/p/7290167.html

你可能感兴趣的文章
STL容器之vector
查看>>
数据中心虚拟化技术
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
一步步学习微软InfoPath2010和SP2010--第七章节--从SP列表和业务数据连接接收数据(4)--外部项目选取器和业务数据连接...
查看>>
oracle 报错ORA-12514: TNS:listener does not currently know of service requested in connec
查看>>
基于grunt构建的前端集成开发环境
查看>>
利用循环播放dataurl的视频来防止锁屏:NoSleep.js
查看>>
python3 生成器与迭代器
查看>>
java编写提升性能的代码
查看>>
Abstract Factory Pattern
查看>>
list 容器 排序函数.xml
查看>>
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇03:暂停游戏》
查看>>
CPU,寄存器,一缓二缓.... RAM ROM 外部存储器等简介
查看>>
windows下编译FreeSwitch
查看>>
git .gitignore 文件不起作用
查看>>