JS利用循环解决问题

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

JS利用循环解决问题

对卦卦上心   2022-09-29 我要评论

1. 打印0-100中3的倍数

思路:首先利用for循环打印0到100的数,然后用if条件语句进行筛选,能被3整除的就进行输出

for(var i=0;i<=100;i++){
    if(i%3==0&&i!=0){
        console.log(i);
    }
}

2. 在页面中写入 1000-2000年中的闰年

思路:首先利用for循环打印1000-2000年,然后用判断是否闰年的条件(能被4整除且不能被100整除或者能被400整除)筛选出闰年进行打印

for(var i=1000;i<=2000;i++){
    if(i%4==0&&i%100!=0 || i%400==0){
         console.log(i+'是闰年');
    }
}

3. 打印100以内所有偶数的和

思路:首先利用循环打印出0到100的数,然后利用if条件判断语句打印出2的倍数(0是特殊的偶数),然后再将这些数加起来

var sum=0
    for(var i=1;i<=100;i++){
        if(i%2==0){
            sum+=i
       	}
    }
console.log(sum);

结果:2550

4.求出1-1/2+1/3-1/4……1/100的和

思路:所有分子不变,都是1,当分母为偶数的时候,前面那个数是减这个偶数的

var sum=0
for(var i=1;i<=100;i++){
    if(i%2==0){
        sum-=1/i
    }else{
        sum+=1/i
    }
}
console.log(sum);

结果:0.688172179310195

5. 打印三角形

5.1 普通三角形

for (var i = 1; i <= 9; i++) {
            for (var j = 1; j <= i; j++) {
                document.write('☆');
            }
            document.write('<br>')
        }

显示效果:

5.2 倒三角

 for (var i = 1; i <= 9; i++) {
            for (var j = 9; j >= i; j--) {
                document.write('☆');
            }
            document.write('<br>')
        }

显示效果:

5.3 等腰三角形

for (var i = 1; i <= 9; i++) {
    for (var j = 9; j >= i; j--) {
            document.write('&nbsp');
       }
        for (var j = 1; j <= i; j++) {
            document.write('☆');
      }
           document.write('<br>')
    }

显示效果:

6.等腰梯形

通过控制i的初始值实现梯形

 for (var i = 5; i <= 9; i++) {
            for (var j = 9; j >= i; j--) {
                document.write('&nbsp');
            }
            for (var j = 1; j <= i; j++) {
                document.write('☆');
            }
            document.write('<br>')
        }

显示效果:

7.输出100-200之间所有的质数

思路:首先质数就是只能被1和自己整除的数,我们在进行循环的时候可以将1和自身排除,然后利用双重for循环,外层循环用来遍历100到200的数,然后定义一个flag初始值为true,然后里层循环用来判断是否是质数,不是质数的时候给flag赋值为false,然后在flag为true的时候就是质数,进行输出

for(var i=100;i<=200;i++){
            var flag=true
            for(var j=2;j<i;j++){
                if(i%j==0){
                    flag=false
                }
            }
            if(flag){
                document.write(i+'<br>')
            }
        }

结果:

8. 求1+2!+3!+…+20!的值

  • 思路:这是求1加2的阶乘加3的阶乘加4的阶乘一直加到20的阶乘,首先我们先定义一个变量sum来进行接收,然后写外层循环用来遍历1到20,
  • 第一次循环
    当i等于1,k等于1,j等于1,k等于k*j等于1,sum等于0加1等于1
  • 第二次循环
    当i等于2,k等于1,j等于1,k等于k*j等于1
    j等于2,k等于k*j等于2,sum等于1加2等于3
  • 第三次循环
    当i等于3,k等于1,j等于1,k等于k*j等于1
    j等于2,k等于k*j等于2
    j等于3,k等于k*j等于6,sum等于1加1+2+6=9
  • 以此类推。。。。
var sum = 0;
        for (var i = 1; i <= 20; i++) {
            var k = 1;
            for (var j = 1; j <= i; j++) {
                k *= j;
            }
            sum += k;
        }
        console.log(sum);

结果:2561327494111820300

9. 有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,第二个里面放2粒,第三个里面放4,棋盘上放的所有芝麻的重量

思路:第一个有1个,第二个有2个,第三个有4个,第四个有8个,以此类推,起那么2个数相乘等于第三个数,分别定义sum和num用来装总数量和第几个,然后利用循环使代码1到64执行

var sum=0;
      var num=1;
      for(var i=1;i<=64;i++){
          sum+=num;
          num*=2;
     }
console.log(sum*0.00001);

结果:184467440737095.53

10.在页面上完成以一个九九乘法表

for (var i = 1; i <= 9; i++) {
            for (var j = 1; j <= i; j++) {
                document.write('<span>'+j+'*'+i+'='+i*j+'</span>');
            }
            document.write('<br>')
        }

显示效果:样式是单独写得

11.打印一个3行5列的表格

document.write('<table>')
        for(var i=1;i<=3;i++){
            document.write('<tr>')
            for(var j=1;j<=5;j++){
                document.write('<td></td>')
            }
            document.write('</tr>')
        }
        document.write('</table>')

显示效果:样式单独加的

总结 

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们