循环辅助语句

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

案例:素数判断

 /*
 * 题目:输入一个整数,判断是否为素数
 * 素数:对于自然数,如果它只有1和本身之外再没有其他因子
 * 解题思路:
 * (1)输入一个数num
 * (2)在[2,n-1]之间去寻找因子,
 * (3)如果找到则设置找到标志,并提前结束
 * (4)根据标志输出相应的结果
 * */
 var num = Number(prompt("请输入一个整数"));
 var m = Math.ceil(Math.sqrt(num));//根据相关数学定理,查找范围可缩小[2,m]
 var found = false;//找到因子的标记
 for(var factor=2; factor<=m; factor++){//遍历找出所有符合的因子
     if(num%factor ==0){
        found = true;
         break;//找到则提前结束
     }
 }
alert(found?"不是素数":"是素数");


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

案例:100以内既不是3的倍数也不是5的倍数的数求和

常规思路:对满足条件的数累加

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


另一种思路:不满足条件的就放过

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(“错误提示1”)
      }
}


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

for(.......){
         if(!条件1){
            alert(“错误提示1”);
            continue;
         }
         if(!条件2){
            alert(“错误提示2”);
            continue;
         }
         循环体主体代码
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值