JS . DAY04笔记

129 阅读1分钟
  1. 打印100-200之间所有能被3或者7整除的数字
    <!-- 打印100-200之间所有能被3或者7整除的数字 -->
    <script>
        var count = 0;
        // 先遍历一遍100-200之间的数
        for(i = 100; i <= 200; i++){
            // 判断是否能被3或者7整除
            if(i % 3 === 0 || i % 7 === 0){
                document.write(i + "&nbsp");
                count++;

                if(count % 5 == 0){
                document.write("<br>")
                }
                
            } 

        }

    </script>
  1. 10以内的阶乘
<script>
        // 10以内的阶乘
        document.write("10以内的阶乘为"+"<br>")
        var cj = 1;
        for( var i = 1 ; i <= 10; i++){
            cj *= i;
        }
        document.write("<p>"+cj+"</p>")

        // // 100以内的和
        // var sum = 0;
        document.write("100以内的和"+"<br>")
        // 遍历1 - 100
        for( var j = 1,sum = 0 ; j <= 100 ; j++){
            sum += j;

        }
        document.write("<p>"+sum + "</p>");

        // 输出 1-10的阶乘之和   1!+2!+3!+...10!
        document.write("输出 1-10的阶乘之和"+"<br>")

        // 先遍历1 - 10的数,求和循环
        for( var i = 1 , sum = 0; i <= 10 ; i++){
            // 内部阶乘的循环
            for(var j = 1, jc = 1;j <= i; j++){
                jc = jc * j;
            }
            // 相加每一次阶乘的和
            sum += jc;
        }
        document.write("<p>"+sum+"</p>")

    </script>
  1. 100以内的质数 且10换行
   <!-- 100以内的质数  且10换行-->

    <script>
        // // 方法一 假设法
        // // 声明一个计数器
        // var count = 0;
        // // 先遍历2-100之间数
        // for(i = 2; i <= 100; i++){
        //     // 判断是否是质数,假设他是
        //     var flag = true;
        //     for( j = 2 ; j < i ; j++){
        //         if(i % j == 0){
        //             // 当数字能被1和它本身之外的数字整除时,判断他是质数
        //             flag = false;
                    
        //             break;
        //         } 
        //     }
        //     if(flag){
        //         document.write(i) 
        //         // count计数器放在此处,是因为每当打印一次质数就记一次数,每5次开始打印一个换行
        //         count++;
        //         // 判断是否是第五次,如果输出第五次就打印换行
        //         if(count % 5 === 0){
        //         document.write("<br>")
        //         }
        //     }

        // }



        // 方法二计数法

        // 遍历2 - 100
        var count = 0; 
        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);
                // 计数
                count++;
                if(count % 5 == 0){
                    document.write("<br>")
                }
            }
        }
        
        //方法三
        // 使用break提前跳出循环,如果不是质数i不会循环到底,如果是质数i会循环到底
        var n = 12;
        for(var i = 2 ; i < n ; i++){
            // 如果能被整除就不是质数可以提前结束循环,通过判断i的循环次数来判断是否提前跳出
            if(n % i === 0 ){
                break;
            }

        }
        if(i === n){
            document.write("是质数")
        }
        else{
            document.write("不是质数")
        }
    </script
  1. 九九乘法表
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p{
            display: flex;

        }
        span{
            width: 100px;
            margin: 5px;
            border: 1px solid black;
            text-align: center;
            font-size: 16px;
            transition: 0.5s;
            background: rgb(160, 235, 255);
        }
        span:hover{
            box-shadow: black -2px 1px 1px ;
            transform:scale(3);
           

        }        
    </style>
</head>
<body>
    <script>
        // 九九乘法表 外部循环
        for(i = 1 ; i <= 9; i++){
            document.write("<p>")
            // 内部循环
            for(j = 1; j <=i; j++){
                document.write("<span>"+ j + "*" + i     + "=" + i*j + "</span>")

            }
            document.write("</p>")           
        }
    </script>
    
    
</body>
</html>
  1. 100以内的所有偶数 且每5个换一次行
    <script>
        document.write("<br>")
        document.write("100以内的所有偶数 且每5个换一次行 ")
        document.write("<br>")
        document.write("<br>")
        var jishu = 0;
        // 遍历100以内的数
        for(var i = 1; i <= 100; i++){
            // 判断是否为偶数
            if(i % 2 === 0){
                document.write(i + "&nbsp&nbsp&nbsp&nbsp");
                jishu++;
                // 每五个换行
                if(jishu == 5){
                   document.write("<br>")
                    jishu = 0;
                }

            }
        }
        document.write("<br>")
        document.write("1000以内的所有奇数 且每10个换一次行 ")
        document.write("<br>")
        document.write("<br>")
        //1000以内的所有奇数 且每10个换一次行 
        var count = 0;
        // 遍历100以内的数
        for(var j = 1; j <=1000; j++){
            // 判断是否为奇数
            if(j % 2){
                document.write(j + "&nbsp");
                count++;
                // 每10个换一次行
                if(count % 10 === 0 ){
                    document.write("<br>");

                }
            }
        }
    </script>
  1. 输出1000-2000之间的所有闰年,每10个换行
    <!--  输出1000-2000之间的所有闰年,每10个换行 -->

    <script>
        // 声明一个计数n
        var n = 0;
        // 遍历1000-2000之间的年数
        for(i = 1000; i <= 2000; i++){
             // 判断是否为闰年
            if(i % 4 == 0 && i % 100 != 0 || i % 400 == 0){
                document.write(i + "&nbsp")
                n++; 
                // 当需要统计的数量发生变化时候才开始变化
                if(n % 10 == 0){
                    document.write("<br>")
                }
            }

         } 

    </script>

   <script>
        // 打印三角形

        for(var i = 0; i < 10 ; i++){
            // 内层打印* 星星个数和行数有关
            for(var j = 0; j < i ;j++){
                document.write("*")
            }
            // 外层打印换行
            document.write("<br>")
        }

        // 打印倒三角
        for( var i = 0 ; i < 10; i++){
            // 内层打印星星 但星星随着行数逐层递减
            for( var j = 0 ; j < 10-i ; j++){
                document.write("*")
            }
            document.write("<br>")
        }

        // 打印三角形
        for(var i = 0; i < 10; i++){

            // 先打印空格 逐层递增
            for( var k = 0; k < i ;k++){
            document.write("&nbsp")
            }
            // 内层打印靠右的星星,逐层递减
            for(var j = 0 ; j < 10 - i ;j++){
                document.write("*")
            }
            document.write("<br>")
        }

        // 打印等腰三角形
        // 11111*
        // 1111*2*
        // 111*2*2*2*
        // 11*2*2*2*2*
        // 1*2*2*2*2*2*

        for(var i = 0; i < 5 ; i++){
            // 打印空格,每一行的空格都比当前行数少一个
            for(j = 0; j < 4 - i; j++ ){
                document.write("&nbsp&nbsp&nbsp&nbsp")
            }
            // 打印星星 + 空格
            for(k = 0 ; k < 1+i ; k++){
                document.write("&#9889"+ "&nbsp&nbsp&nbsp&nbsp")
            }
            document.write("<br>")
        }
    </script>
  1. 随机生成一个数,判断是不是质数
  <!-- 随机生成一个数,判断是不是质数 -->
    <script>
        var x = Math.round(Math.random()*100);
        // var x = 12;
        var cum = 0 ;
        for( var i = 1 ; i<= x ;i++){
            
            if(x % i === 0 ){
                cum++;
            }
        }
        // 因为质数只能被他1和自身整除,所以当整除的计数为2时他就是质数
        if(cum === 2){
                document.write(x +"是质数") 
                
            }
        else(
            document.write(x +"不是质数")
           
        )    

            
    </script>

9.输出所有的水仙花数

    <script>
        // 输出所有的水仙花数
        // 水仙花数 :水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。
        // 遍历一个100-999之间三位数
        for(var i = 100; i < 1000; i++){
            // 取出百位数
            var bai = Math.floor(i / 100)
            // 计算百位的三次幂
            var x = bai * bai * bai
            // 取出十位数
            var shi = Math.floor(i % 100 / 10)
            // 计算十位的三次幂
            var y = shi * shi * shi
            // 取出个位数
            var ge = Math.floor(i % 10)
            // 计算个位的三次幂
            var z = ge * ge * ge
            if( x + y + z === i){
                document.write(i + "是水仙花数")
                
            }
        }

    </script>