一、判断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 !== 0
  11. 反推得出,只要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 IsPrime
  22. {
  23. public static void main(String[] args){
  24.  
  25. int num = 953;
  26. boolean isPrime = true; // 标记数字num默认为素数
  27. for(int i=2;i<num;i++) {
  28. if(num%i==0) { // num能够被2~num-1之间的自然数整数
  29. isPrime = false; // 标记数字num为非素数
  30. break; // 结束循环
  31. }
  32. }
  33.  
  34. System.out.println(isPrime?num+"是素数":num+"不是素数");
  35.  
  36. }
  37. }

代码结果显示:

二、列出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 IsPrime
  20. {
  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<num;i++) {
  26. if(num%i==0) {
  27. isPrime = false;
  28. break;
  29. }
  30. }
  31. if(isPrime) {
  32. System.out.print(num+" ");
  33. }
  34. }
  35. }
  36. }

代码解释说明:

代码结果显示:

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

代码:

  1. /**
  2. 列出1~100之间的所有素数,并每行显示5个数。
  3. 分析:
  4. 从上例代码中可以得到1~100之间的所有素数。
  5. 要想每行显示5个数,就是要知道每次素数得出的时候,知道它是第几个出现的,然后进行累加
  6. 当累加数字到5时,就换行。
  7.  
  8. 因此需要用一个标记来记录每次素数输出的次数。
  9.  
  10. */
  11.  
  12. public class IsPrime
  13. {
  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<num;i++) {
  20. if(num%i==0) {
  21. isPrime = false;
  22. break;
  23. }
  24. }
  25. if(isPrime) {
  26. System.out.print(num+" ");
  27. count++; // 每打印一个素数就记录一次
  28. if(count%5==0) { // 每计数器累计记录5次,就换行一次。
  29. System.out.println();
  30. }
  31. }
  32. }
  33. }
  34. }

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

  1. if(isPrime) {
  2.   System.out.print(num+" ");
  3.   count++; // 每打印一个素数就记录一次
  4.   if(count==5) { // 计数器累计到数字5时,就换行一次
  5.      System.out.println();
  6. 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=c
  15. · 每行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 Test03
  28. {
  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. }

代码结果显示:

for循环输出素数探究【java】的更多相关文章

  1. for循环输出空心菱形的形状【java】

    使用for循环语句输出以下“空心菱形”效果: * * * * * * * * * * * * * * * * 建议优先参考笔者的另一篇文章:<for循环输出菱形的形状[java]> 代码: ...

  2. Java多线程:用三个线程控制循环输出10次ABC

    转载:http://www.cnblogs.com/gaopeng527/p/5257884.html 题目:有A,B,C三个线程, A线程输出A, B线程输出B, C线程输出C,要求, 同时启动三个 ...

  3. 11、增强型for循环对二维数组的输出(test8.java)

    由于笔者原因,这部分知识,尚不能整理出代码,笔者会好好学习增强型for循环中迭代起的相关知识,在笔者有能力,书写好这段代码后,将对本篇文章,进行二次修改,也同时欢迎大家与笔者交流,共同学习,共同进步. ...

  4. 042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用——循环输出英文字母

    042 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 04 案例演示while循环的使用--循环输出英文字母 本文知识点:案例演示while循环的使用2 ...

  5. Java使用for循环输出杨辉三角

    杨辉三角形由数字排列,可以把它看做一个数字表,其基本特性是两侧数值均为1,其他位置的数值是其正上方的数字与左上角数值之和.编写程序,使用for循环输出包括10行在内的杨辉三角形. 思路是创建一个整型二 ...

  6. Java基础50题test2—输出素数

    [输出素数] 题目:判断 101-200 之间有多少个素数,并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数 pu ...

  7. JAVA 基础编程练习题2 【程序 2 输出素数】

    2 [程序 2 输出素数] 题目:判断 101-200 之间有多少个素数,并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除 2 到 sqrt(这个数),如果能被整除,则表明此数不是素数, ...

  8. 输出质数(Java)

    输出质数 一.什么是质数 质数又称素数.一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,否则称为合数(规定1既不是质数也不是合数). 二.代码实现 1.输出100以内的质数 i ...

  9. 关于hasNextInt判断后无限循环输出else项的解决办法

    话不多说,上来就是干! import java.util.Scanner; public class Test_hasNextInt { /** * @param args */ public sta ...

随机推荐

  1. shutil模块和os模块对比

    一.shutil -- 是一种高层次的文件操作工具类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好. 1.shutil.copy(src,dst)复制一个文件到另一个目录下 ...

  2. IDEA导入Maven多项目(Mac下)

    主界面Import Project 选择maven项目目录文件夹 选择Import project from external model 中的maven选项,Next下一步 Sources和Docu ...

  3. java基本类型的默认值

    基本类型 默认值 取值范围 (最大/最小) 字节数 二进制位数 byte 0 127(2^7-1) -128(-2^7) 1byte 8bit short 0 32767(2^15 - 1) -327 ...

  4. HDU 6382 odds (暴力 + 剪枝优化)

    odds Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Subm ...

  5. Mongo学习笔记

    安装和开始 下载 MongoDB 参考:+MongoDB安装配置(Windows) +Mongo手册

  6. cordova 问题汇总

    用chrome进行调试: https://jingyan.baidu.com/album/db55b609fde96d4ba30a2fa9.html?picindex=8 http://rensann ...

  7. [XAF] Llamachant Framework Modules

    Llamachant Framework Modules 最近更新 2018-08-22 *变更:我们从所需的模块列表中删除了审计跟踪模块.如果要在应用程序中使用Audit Trail功能,请将Aud ...

  8. 29.vector

    对于List接口这里还介绍一个它的实现类Vector,Vector 类可以实现可增长的对象数组. Vector可以实现可增长的对象数组.与数组一样,它包含可以使用整数索引进行访问的组件.不过,Vect ...

  9. Python序列结构--元组

    元组:轻量级列表 元组创建于元素访问 >>> x = (1, 2, 3)>>> type(x)<class 'tuple'>>>> x ...

  10. 本学期Windows编程微型技术博客上线!

    将两篇报告生成超链接模式方便阅读,以下为链接: https://files.cnblogs.com/files/Kitty-/Windows编程微型技术报告一.pdf https://files.cn ...