5循环结构
5.1 循环结构的概念
有条件地重复地做一件事,每一次做的事情不同但类似。
实际生活中存在重复问题,那么程序中也应该存在相应的对照,即循环
* 计算1+2+3····+10
* 一*/
var sum1 = 1+2+3+4+5+6+7+8+9+10;
/*二*/
var sum2 = 0;
sum2 += 1;
sum2 += 2;
sum2 += 3;
sum2 += 4;
sum2 += 5;
sum2 += 6;
sum2 += 7;
sum2 += 8;
sum2 += 9;
sum2 += 10;
/*三*/
var sum3 = 0;
var n = 1;
while(n <= 10){
sum3 + n;
n++;
}
从三种方案可以看出第三中方案有明显的优势
5.2 while循环
while是表示“当....则....”,也就是当某个条件成立时,则一直重复做
do...while(条件)是先进行一次循环,再判断是否满足条件
案例一:输出所有的水仙花数
var num = 100;
while (num <= 999) {
var num1 = Math.floor(num / 100);
var num2 = Math.floor((num % 100) / 10);
var num3 = num % 10;
var sum = num1 * num1 * num1 + num2 * num2 * num2 + num3 * num3 * num3;
if (sum == num) {
alert(num + "是水仙花数");
}
num++;
}
案例二:GDP增长
var year = 2009;
var China = 49089.92;
var America = 142562.75;
while (China < America){
China += 0.08 * China;
America += 0.02 * America;
year ++;
}
alert(year);
while的循环套路
(1)初始状态 初始状态是怎样的
(2)循环条件 重复做的条件是什么
(3)循环体(要重复做的事) 重复做什么
(4)为下次循环做准备 怎么过渡到下一次循环
| 水仙花数 | GDP预测 |
初始状态 | num = 100 | var year = 2009; |
循环条件 | num <= 999 | China < America |
循环体 | var num1 = Math.floor(num / 100); | China += 0.08 * China; |
为下次循环做准备 | num++ | year++ |