您的位置:首页 > Web前端 > JavaScript

循环嵌套和辅助语句

2017-08-01 19:30 246 查看
循环辅助语句

break:跳出所在的switch 或者循环结构。

案例:判断素数

var n = Number(prompt("请输入一个自然数:"));
var m = Math.ceil(Math.sqrt(n));//根据相关数学定理,查找范围可缩减至{2,sqrt(n)}
var found = false;//找到因子的标记
for (vari = 2; i <=m; i++){
if (n % i == 0) {
found =true;
break;
}
}


alert(found?”不是素数”:”是素数”);

对100以内既不是3的倍数也不是5的倍数的数求和

* 思路一:

* (1)对{1,100}范围内逐个判断

* (2)如果满足条件就累加

* (3)输出和

* */ 常规思路,对满足条件的数累加

var sum = 0;
for(var n = 1; n <= 100;n++){
if(n%3 != 0 && n%5 !=0){
sum+=n;
}
}
alert(sum);


思路二:

* (1)对{1,100}范围内每个数重复步骤2,3

* (2)如果满足条件就放过

* (3)累加

* (3)输出和

将范围内不满足条件的跳过,其余的累加。

continue:结束本次循环,然后开启下一次循环

var sum = 0;
for (var n = 1; n <=100; n++) {
if (n % 3 == 0 || n % 5 == 0) {
continue;//结束本次循环
}
sum +=n;
}
alert(sum);


思路二的好处:结构清晰,也就是我们在进行数据处理之前,先把各种不符合条件的情况先排除,然后再处理符合条件的情况(这个一般是程序的主体)

如果循环体的主体代码的执行有两个前提条件,常规思路是这样写的:

for(….){

if(条件1){

if(条件2){

循环体主体代码(可能代码较多)

}else{

alert(“错误提示2”)

}

}else{

alert(“错误提示2”)

}

}

换另外一种思路来描述,是这样的

for(…){

if(!条件1){

alert(“错误提示1”)

continue;

}

if(!条件2){

alert(“错误提示2”)

continue;

}

循环主体代码

}

循环嵌套

为什么有循环的嵌套?

因为一件事情的内容需要重复做。而且这个事情要反复做。

什么时候用循环的嵌套?

两者没有直接关系:

一般有行数有列数并且两者之间存在关系的时候用循环的嵌套。

比如直角三角形的输出

for(var i= 1;i <= 4;i++){
for(j=1;j<i+1; j++){
document.write("*");
}
document.write("<br>");
}


等腰三角形的输出:

for(var i= 1;i <= n;i++){
for(var j=n-i;j>0; j--){
document.write("_");
}
for(var k =1;k<2*i-1;k++){
document.write("*");
}
document.write("<br>")
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息