• JS利用循环解决的一些问题


    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);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    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+'是闰年');
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    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);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 结果: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);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 结果:0.688172179310195

    5. 打印三角形

    5.1 普通三角形

    for (var i = 1; i <= 9; i++) {
                for (var j = 1; j <= i; j++) {
                    document.write('☆');
                }
                document.write('
    ') }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    显示效果:
    在这里插入图片描述

    5.2 倒三角

     for (var i = 1; i <= 9; i++) {
                for (var j = 9; j >= i; j--) {
                    document.write('☆');
                }
                document.write('
    ') }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    显示效果:
    在这里插入图片描述

    5.3 等腰三角形

    for (var i = 1; i <= 9; i++) {
        for (var j = 9; j >= i; j--) {
                document.write(' ');
           }
            for (var j = 1; j <= i; j++) {
                document.write('☆');
          }
               document.write('
    ') }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    显示效果:
    在这里插入图片描述

    6.等腰梯形

    • 通过控制i的初始值实现梯形
     for (var i = 5; i <= 9; i++) {
                for (var j = 9; j >= i; j--) {
                    document.write(' ');
                }
                for (var j = 1; j <= i; j++) {
                    document.write('☆');
                }
                document.write('
    ') }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    显示效果:
    在这里插入图片描述

    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')
                }
            }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 结果:
      在这里插入图片描述

    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);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    结果: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);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    结果:184467440737095.53

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

    for (var i = 1; i <= 9; i++) {
                for (var j = 1; j <= i; j++) {
                    document.write(''+j+'*'+i+'='+i*j+'');
                }
                document.write('
    ') }
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    显示效果:样式是单独写得
    在这里插入图片描述

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

    document.write('')
            for(var i=1;i<=3;i++){
                document.write('')
                for(var j=1;j<=5;j++){
                    document.write('')
                }
                document.write('')
            }
            document.write('
    ')
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    显示效果:样式单独加的
    在这里插入图片描述

  • 相关阅读:
    Go面试题
    FreeSQL 基本使用
    Go --- go-elasticsearch介绍及简单使用
    数据库的三个范式
    【PAT甲级】1027 Colors in Mars
    Unity中Shader纹理的多级渐远Mipmap
    贪心算法学习——最长单调递增子序列
    对话式人工智能的数据采集方案
    JAVA经典百题之3的倍数
    c++架构师需要掌握哪些知识
  • 原文地址:https://blog.csdn.net/liu0218/article/details/126510806