// ================js循环==============
// 循环的目的:可以重复执行某些代码,通常跟计数有关
// 1.. ==========for========
/* a.初始化变量 通常用于作为计数器使用
b.条件表达式 用来决定每一次循环是否继续执行 就是终止条件
c.操作表达式 对计数器变量进行更新(递增或递减)
for(初始化变量;条件表达式;操作表达式){
循环体
} */
//求1-100之间的和 平均值
var sum = 0;//结果用变量存储 和
var ave = null;//平均值
for(let i = 1; i<=100; i++){
console.log('道歉一百次');//循环体
sum+=i;//sum = sum + i;
}
console.log(sum);//5050
ava = sum / 100;
console.log(ava);//50.5
//求1-100之间所有偶数和奇数的和
var odd = 0;//奇数
var even = 0;//偶数
for(let i = 1; i<=100;i++){
if(i%2 == 0){
//console.log(i);
even+=i;//even = even + i;
}else{
//console.log(i);
odd+=i; //odd = odd + i;
}
}
var total =even+odd;
console.log(total);
//求1-100之间所有能被3整除的数字的和
var sumT = 0;
for(let i = 1; i<=100;i++){
if(i%3 == 0){
sumT+=i;//sumT = sumT + i;
}
}
console.log(sumT);//1683
// 一行显示5颗心
var stars = '';
for(let i = 1; i<=5; i++){
// console.log('♥');
stars = stars + '♥';
}
//console.log(stars);//♥♥♥♥♥
//=========2..双重for循环=====
/* 外层循环一次,里面的循环执行全部
外i = 1;里j = 1;j = 2; j = 3;
*/
for(let i = 1; i <= 3;i++){
//console.log('这是外层循环的第'+i+'次');
for(let j = 1; j <= 3; j++){
//console.log('这是里层循环的第'+j+'次');
}
}
//打印n行n列的心
/* var rows = prompt('请输入行数');
var cols = prompt('请输入列数');
var starsN = '';
for(let i = 1; i <= rows;i++){
for(let j = 1; j <= cols; j++){
starsN = starsN + '♥';
}
starsN = starsN + '\n';
}
console.log(starsN); */
/* -------打印到三角形-------
i1★★★★★ 5
i2★★★★ 4
3★★★ 3
4★★ 2
5★ 1
*/
var str = '';
for (let i = 1; i <= 5; i++) {//外层循环控制行数
for (let j = i; j <= 5; j++) {// j = i 里打印列数
str = str + '★';
}
str = str + '\n';//打印一行则换行
}
//console.log(str);
/* ------打印正三角形-----------
★
★★
★★★
★★★★
★★★★★
*/
var str1 = '';
for(let i = 1; i <= 5; i++){//外层循环控制行数
for(let j = 1; j <= i; j++){//里层循环控制每一行的个数 j<=i
str1+='★';//str1 = str1 +'★';
}
str1 = str1 +'\n';//换行
}
// console.log(str1);
// ========九九乘法表========
var s = '';
for(let i = 1; i <= 9; i++){//外层循环控制行数
for(let j = 1; j <= i;j++){//里层循环控制每一行的个数 j<=i
//1x2=2
s+= j + 'x' + i + '=' + i*j + '\t';
}
s+='\n';//换行
}
console.log(s);
//===========while===========
var num = 1;//初始化变量(计数器)
while(num<=5){
console.log('hello world');
num++;//操作表达式 完成计数器的更新防止陷入死循环
}
var age = 1;
while(age<=100){
//console.log('这个人今年'+age+'岁了');
age++
}
/* var love = prompt('do you love me?');
while(love !== 'love'){ //!== 值和数据类型都相同
love = prompt('do you love me?');
}
alert('i love you too'); */
//===============do while===============
/* 语法:
do{
//循环体
}while(条件表达式)
先执行一次循环体 再判断条件
至少执行一次循环体
*/
var q = 1;
do{
console.log('how are you?');
q++;操作表达式 完成计数器的更新防止陷入死循环
}while(q <= 5);
//=======continue break==========
//break 立即跳出整个循环(循环结束)
//continue;//退出当前循环
for(let i = 1; i <= 3; i++){
if(i == 2){
continue;//退出当前循环 直接跳到i++
}
console.log('这是'+i);//这是1 这是3
}
//求1-100之间除了能被7整除之外的和
var sumHe = 0;
for(let i = 1; i <= 100; i++){
if(i%7 == 0){
continue;
}
sumHe += i;
}
console.log(sumHe);//4315