|NO.Z.00073|——————————|BigDataEnd|——|Java&循环结构.V12|——|Java.v12|双重for循环.v04|打印素数|
一、双重for循环打印素数
### --- 案例题目
~~~ ——> 使用双重for循环打印2~100之间的所有素数。
~~~ ——> 当一个数只能被1和它本身整除时,这个数就叫做素数或质数。
二、编程代码
### --- 编程代码
/*
编程使用双重for循环打印2 ~ 100之间的所有素数
*/
public class ForForPrimeTest {
public static void main(String[] args) {
// 1.使用for循环打印2 ~ 100之间的所有整数
for(int i = 2; i <= 100; i++) {
// 3.声明一个boolean类型的变量作为是否为素数的标记
boolean flag = true;
// 2.针对每一个当前的整数都要判断是否为素数,若是素数则打印,否则不打印
// 判断一个数是否为素数的方法是:若该数不能被2到它本身-1之间的所有整数整除时,则证明该数是素数
// 使用内层for循环用于控制2到该数自身-1之间的范围
//for(int j = 2; j < i; j++) {
// 只需要判断2到该数的平方根即可,因为随着除数的增大商必然减小,会造成重复的判断
for(int j = 2; j <= Math.sqrt(i); j++) {
// 使用当前数除以该循环中的每个数据并判断是否可以整除,只要找到一个可以整除的数据,则证明该数不是素数
if(0 == i % j) {
flag = false;
break; // 跳出当前所在的内层循环,也就是不需要再继续除以下一个整数
}
}
// 只可以打印素数
if(flag) {
System.out.println("i = " + i);
}
}
}
}
三、打印输出
### --- 编译
C:\Users\Administrator\Desktop\project>javac ForForPrimeTest.java
### --- 打印输出
C:\Users\Administrator\Desktop\project>java ForForPrimeTest
i = 2
i = 3
i = 5
i = 7
i = 11
i = 13
i = 17
i = 19
i = 23
i = 29
i = 31
i = 37
i = 41
i = 43
i = 47
i = 53
i = 59
i = 61
i = 67
i = 71
i = 73
i = 79
i = 83
i = 89
i = 97
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv001-Java语言基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通