谁能帮我把下列JAVA 逐句解释一下。非常感谢!
请大神帮忙把下列逐句解释一下!谢谢!publicclassLi{publicstaticvoidmain(String[]args){inti,j,s,d=0;for(i...
请大神帮忙把下列逐句解释一下!谢谢!
public class Li {
public static void main(String[] args) {
int i, j,s, d = 0;
for (i = 1; i < 100; i++) {
s = 0;
for (j = 1; j <= i; j++) {
if (i % j == 0) {
s += 1;
}
}
if (s == 2) {
System.out.println(i);
d = d + 1;
}
}
System.out.println("100以内的质数有: " + d + " 个");
}
}
解释一下该程序的运行思路! 展开
public class Li {
public static void main(String[] args) {
int i, j,s, d = 0;
for (i = 1; i < 100; i++) {
s = 0;
for (j = 1; j <= i; j++) {
if (i % j == 0) {
s += 1;
}
}
if (s == 2) {
System.out.println(i);
d = d + 1;
}
}
System.out.println("100以内的质数有: " + d + " 个");
}
}
解释一下该程序的运行思路! 展开
1个回答
展开全部
public class Li {
public static void main(String[] args) {
int i, j,s, d = 0;
for (i = 1; i < 100; i++) {//循环一百次,对每个数【i】进行是否是质数检查。
s = 0;
for (j = 1; j <= i; j++) {//循环比要检查的数【i】小的数,i等于2就循环2次。等于3就3次。
if (i % j == 0) {//将【i】整除每一个比【i】小的数,【因为质数的条件是除了1和自己,不能被任何数整除,也就是只能被整除2次】
s += 1;//如过能被整除,就记录一次。
}
}
if (s == 2) {//检查结束之后,满足之辈整除2次,这个数就是质数
System.out.println(i);//输出质数
d = d + 1;//记录质数的数量
}
}
System.out.println("100以内的质数有: " + d + " 个");
}
}
public static void main(String[] args) {
int i, j,s, d = 0;
for (i = 1; i < 100; i++) {//循环一百次,对每个数【i】进行是否是质数检查。
s = 0;
for (j = 1; j <= i; j++) {//循环比要检查的数【i】小的数,i等于2就循环2次。等于3就3次。
if (i % j == 0) {//将【i】整除每一个比【i】小的数,【因为质数的条件是除了1和自己,不能被任何数整除,也就是只能被整除2次】
s += 1;//如过能被整除,就记录一次。
}
}
if (s == 2) {//检查结束之后,满足之辈整除2次,这个数就是质数
System.out.println(i);//输出质数
d = d + 1;//记录质数的数量
}
}
System.out.println("100以内的质数有: " + d + " 个");
}
}
追问
for (i = 1; i < 100; i++) {//循环一百次,对每个数【i】进行是否是质数检查。
对于这条质数检查我还是有些不理解!
这里我只看得出是一个很普通的循环句,对于质数的检查我还是不理解!
您 能否帮我仔细讲解一下?谢谢!
追答
双重循环,for (i = 1; i < 100; i++) {//循环一百次
每次取出一个整数之后,进行内部循环来检查
for (j = 1; j <= i; j++) {//循环比要检查的数【i】小的数
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询