for循环、while和do while

一、for 一般应用于判断条件简单,或者已知循环次数
二、while或者do while 一般应用于条件相对复杂,或者不知循环次数
 
break 可以在循环和switch语句中使用
continue 只能在循环中使用
 
break 结束整个循环
continue 跳出当前循环
 
一、打印100以内能同时被3和7整除的数
var count = 1;
while (count <= 100) {
if (count % 3 == 0 && count % 7 == 0) {
console.log(count);
}
count++;
}
 
二、打印1000到2000之间所有的闰年,每五个换行
var j = 0;
for (var i = 1000; i <= 2000; i++) {
if (i % 4 == 0 && i % 100 !== 0 || i % 400 == 0) {
document.write(i + '&nbsp');
j++;
if (j % 5 == 0) {
document.write('</br>');
}
}
}
 
三、打印三角形
for (var i = 0; i < 5; i++) {
for (var j = 0; j <= i; j++) {
document.write('*');
}
document.write('<br>');
}
 
四、打印倒三角
for (var j = 5; j >= 0; j--) {
for (var i = 0; i <= j; i++) {
document.write('*');
}
document.write('<br>');
}
 
五、打印靠右三角
for (var k = 0; k < 6; k++) {
for (var y = 4; y >= k; y--) {
document.write('&nbsp;&nbsp;');
}
for (var s = 0; s <= k; s++) {
document.write(3);
}
document.write('<br>');
}
 
六、打印99乘法表
for (var i = 1; i < 10; i++) {
for (var k = 1; k <= i; k++) {
document.write(k + '*' + i + '=' + i * k + '&nbsp;&nbsp;');
}
document.write('<br>')
}
 
七、求100以内整数的和
var sum = 0;
for (var i = 0; i <= 100; i++) {
sum += i;
}
console.log(sum)
 
八、求100以内奇数的和
var sum = 0;
for (var i = 0; i <= 100; i++) {
//i%2=1=true
if (i % 2) {
sum += i;
}
}
console.log(sum);
 
九、打印等腰三角形
111112
1111222
11122222
112222222
1222222222
for (var i = 1; i < 6; i++) {
for (k = 5; k >= i; k--) {
document.write('&nbsp;&nbsp;');
}
for (j = 0; j <= 2 * i - 2; j++) {
document.write(3);
}
document.write('<br>');
}
 
十、打印100以内的质数
for (var i = 2; i <= 100; i++) {
for (var j = 2; j < i; j++) {
if (i % j == 0) {
break;
}
}
if (j == i) {
document.write(i + '<br>');
}
}
 
十一、计算天数
var dayres
switch (month) {
case 12: dayres += 30;
case 11: dayres += 31;
case 10: dayres += 30;
case 9: dayres += 31;
case 8: dayres += 31;
case 7: dayres += 30;
case 6: dayres += 31;
case 5: dayres += 30;
case 4: dayres += 31;
case 3: dayres += 29;
case 2: dayres += 31;
default: dayres += day;
}
 
十二、求1的阶乘+2的阶乘+...+10的阶乘,1!+2!+3!+4!...+ 10!
var sum = 1;
var sum1 = 0;
for (var i = 1; i <= 10; i++) {
sum = sum * i;
sum1 += sum;
}
document.write(sum1)
 
十三、随机一个数,判断质数 break 假设法,立flag
var k = parseInt(Math.random() * 100);
var flag = true;
for (var i = 2; i < k; i++) {
if (k % i === 0) {
flag = false;
break;
}
}
if (flag) {
document.write(k + '为质数!')
} else {
document.write(k + '为合数!')
}
 
十四、所有的水仙花数 abc = a*a*a + b*b*b + c*c*c 完美数 三位数
for (var i = 100; i <= 999; i++) {
var a = parseInt(i / 100);
var b = parseInt(i % 100 / 10);
var c = parseInt(i % 10 / 1);
 
if (i === a * a * a + b * b * b + c * c * c) {
console.log(a, b, c);
document.write(i + '<br>');
}
}
 
十五、宰相的麦子:相传古印度宰相达依尔,是国际象棋的发明者。有一次,国王因为他的贡献要奖励他,问他想要什么。达依尔说:“只要在国际象棋棋盘上(共64格)摆上这么些麦子就行了:第一格一粒,第二格两粒,……,后面一格的麦子总是前一格麦子数的两倍,摆满整个棋盘,我就感恩不尽了。”国王一想,这还不容易,刚想答应,如果你这时在国王旁边站着,你会不会劝国王别答应,为什么?
var sum = 1;
for (var i = 1; i < 64; i++) {
sum *= 2;
}
sum++;
document.write(sum);
 
十六、画菱形
111112
1111222
11122222
112222222
1222222222
22222222222
1222222222
112222222
11122222
1111222
111112
for (var i = 1; i <= 6; i++) {
for (var k = 0; k <= 5 - i; k++) {
document.write('&nbsp;&nbsp;');
}
for (var j = 0; j < 2 * i - 1; j++) {
document.write(8);
}
document.write('<br>');
}
for (var a = 5; a >= 1; a--) {
for (var b = 0; b <= 5 - a; b++) {
document.write('&nbsp;&nbsp;');
}
for (var c = 1; c <= 2 * a - 1; c++) {
document.write(8);
}
document.write('<br>');
}
 
练习一、一个新入职,月工资为2000元的员工,每年涨当年工资5%,到(退休?)20年时的月工资是多少?
var sum = 2000 * 12;
for (var i = 1; i <= 20; i++) {
sum *= 1.05;
}
document.write(parseInt(sum / 12));
 
练习二、计算1+3+5+...+99的和
var sum = 0;
for (var i = 1; i < 100; i++) {
if (i % 2) {
sum += i;
}
}
document.write(sum);
 
练习三、求出1-1/2+1/3-1/4…..1/100的和
var sum = 0;
for (var i = 1; i < 100; i++) {
sum += 1 / i;
}
document.write(sum);
 
练习四、输出20-80之间能被3整除的数,每五个一行
var sum = 0;
for (var i = 20; i <= 80; i++) {
if (i % 3 === 0) {
document.write(i + '&nbsp;');
sum++;
if (sum % 5 == 0) {
document.write('<br>');
}
}
}
 

posted @ 2021-06-19 10:02  睫毛上长雀斑  阅读(385)  评论(0)    收藏  举报