zoukankan      html  css  js  c++  java
  • Javascript----练习三(循环递归)

    <!DOCTYPE html>
    <html>
    
    <head>
        <meta charset="UTF-8">
        <title>Javascript   练习三</title>
    </head>
    <style type="text/css">
    /*  table{
              border: 1px solid #B2B2B2;
              border-collapse: collapse;
              margin: 0 auto;
           }
           table tr{
              border-collapse: collapse;
           }
           table tr:nth-child(1){
            background-color: #DADADA;
            color: red;
           }
           table tr td{
            display: inline-block;
             60px;
            height: 60px;
            line-height: 60px;
            text-align: center;
            border-collapse: collapse;
            border: 1px solid #B2B2B2;
           }
           table tr td:nth-child(1){
            background-color: #DADADA;
            color: red;
           }
        */
    
    table {
        border: 1px solid #B2B2B2;
        border-collapse: collapse;
        margin: 0 auto;
    }
    
    table tr {
        border-collapse: collapse;
    }
    
    table tr:nth-child(1) {}
    
    table tr td {
        display: inline-block;
         60px;
        height: 60px;
        line-height: 60px;
        text-align: center;
        border-collapse: collapse;
        border: 1px solid #B2B2B2;
    }
    
    table tr td:nth-child(1) {}
    
    .b {
        color: black;
        background-color: white;
    }
    
    .w {
        color: white;
        background-color: black;
    }
    </style>
    
    <body>
        <script type="text/javascript">
        /***********************************
                    1.请写出javascript的三种循环
                    ***********************************/
        /*
          for,while,do while
        */
    
        /***********************************
        2.请写出break和continue作用和区别
        ***********************************/
    
        /*
           作用:中断循环
           区别: break中断当前整的循环
                  continue 中断当前循环
    
        */
    
        /***********************************
        3.循环输出1-100 里奇数
        ***********************************/
    
        /*  for(var i = 1;i<=99;i+=2){
              console.log(i);
          }*/
    
    
    
        /***********************************
        3.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
        (程序分析:请抓住分子与分母的变化规律。)
        ***********************************/
    
    
        /*  var sum = 0;
    
                 var x = 2;
                 var y = 1;
    
                 for(var i= 0;i<20;i++){
                     var div = x/y;
                     var t = x;
                     x = x+y;
                     y = t;
                     sum+=div;
                 }
                     console.log(sum);
            */
    
    
        /***********************************
        4.有一座桥,当你身上所拥有的钱大于30000时,每过一次桥则需要支付3000元。当你身上的钱小于或等于30000时,每过一次桥则需要支付你身上10%的钱。已知有一个人身上有33000元,问此人能过这座桥多少次之后,身上的钱会少于100块?
        ***********************************/
    
        /* var i = 0;
         var n = 33000;
    
         while(n>100){
             if(n>30000){
                 n -= 3000;
                 i++;
             }
             else{
                 n -= n*0.1;
                 i++;
             }
         }
    
         console.log(i)*/
    
    
    
    
        /***********************************
        5.小明去存1000钱,每天会产生1%的利息,求问,30天后,小明可以拿回多少钱
        ***********************************/
    
        /* var n = 30;
         t = 1000;
          sum = 1000;
         for(var i = 0;i<n;i++){
              sum *=1.01;
         }
         console.log(sum);
    
    
         function getSum(n){
             if(n==0){
                return t;
             }
             else{
                return getSum(n-1)*1.01;
             }
         }
    
         console.log(getSum(30));*/
    
    
    
    
        /***********************************
        6.小明题目升级版,小明拿着1000块在周一买入基金,一开户立给10块红利,
        逢周六日没有利息,平时利息为1%,请问30天后,小明可以拿回多少钱?
        ***********************************/
        /*var sum = 1000+10;
        for(var i = 1;i<=30;i++){
            if(i%7==0||i%6==0){
                sum = sum;
            }
            else{
               sum*=1.01;
            }
        }
    
        console.log(sum);
    
        function getSum(n){
           if(n==0){
               return 1000;
           }
           else{
               if(n%7==0||n%6==0){
                   return getSum(n-1);
               }
               else{
                   return getSum(n-1)*1.01;
               }
           }
        }
    
    
        console.log(getSum(30));*/
    
    
    
    
        /***********************************
        7.乘法口诀表:
        让学生输出4种方向的乘法口诀表
        ***********************************/
    
    
        /*   
          document.write("<table border = '1'>");
            for(var i = 0; i<=9;i++){
                if(i == 0){
                     document.write("<tr>");
                    for(var j = 0; j<=9 ;j++){
                         document.write("<td>"+j+"</td>");
                     }
                     document.write("</tr>");
                }
                else{
                     document.write("<tr>");
                    for(var j = 0;j<=9;j++){
                        if(j==0){
                             document.write("<td>"+i+"</td>");
                        }
                        else{
                            document.write("<td>"+i*j+"</td>");
                        }
                    }
                     document.write("</tr>");
    
                }
    
            }
    
            document.write("</table>");*/
    
    
    
    
        /***********************************
        8.给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
        ***********************************/
    
        /*  num = 43431;
                 i=0;
                 var s = 1;
    
                 while(num>0){
                    console.log("i:"+num);
                    num=parseInt(num/10);
                    i++;
                 }
    
                 console.log("length:"+i);
    
    
    
    
                var num = 43431;
                var max = num;
                var result=0;
    
               while(num>0){
    
    
                   console.log(num+"%"+10+"="+(num%10));
    
                    if(num>10){
                       result =(result + parseInt(num%10))*10;
                    }
                    else{
                        result +=num;
                    }s
    
                    num=parseInt(num/10);
    
               }
    
    
    
       console.log(max+"->"+result);
    
    */
    
    
    
    
    
        /***********************************
        9.求100个随机数之和,随机数要求为0—9的整数
        ***********************************/
    
        /*var sum = 0;
        for(var i = 0;i<10;i++){
            var num = parseInt(Math.random()*10);
            console.log(i+":"+num);
            sum+=num;
        }
    
        console.log("sum:"+sum);*/
    
    
        /***********************************
        10.通过键盘输入一个任意的正整数(建议这个数比3大),
        在网页中输出3至这个数之间所有能被3整除的数字。
        ***********************************/
    
        /* var num = parseInt(prompt("请输入一个大于三的整数:"));
         
         var  j = 1;
         for(var i = 3;i<=num;i++){
             if(i%3==0){
                 console.log(j+":"+i);
             }
         }
           */
    
    
    
        /**********************************************
        11.黑白棋   奇数行 && 奇数列 || 偶数行 && 偶数列
        **********************************************/
    
        /* var n = 10;
         var m = 10;
              
        document.write("<table class = 't2'>");   
         for(var i = 0;i<n;i++){
            document.write("<tr>");
            for(var j =0;j<m;j++){
    
                if(i%2==1&&j%2==1||i%2==0&&j%2==0){
                 
                   document.write("<td class = 'w'>白</td>");
                }
                else{
                    document.write("<td class = 'b'>黑</td>");
                }
            }
             document.write("</tr>");
         }
    
          document.write("</table>");  */
    
    
    
    
        /**********************************************
        12.(提高题)输入一整数A,判断它是否素数(除了自己和1之外,不能被其它数整数)
        **********************************************/
        /*
                    var num = parseInt(prompt("请输入一个大于三的整数:"));
    
    
                      function isPrime(number){
                        //小于2都不是素数
                              if (number<2) {return false};
                        //2是素数,被2整除的都不是素数
                               if (number===2) {
                                       return true
                               }else if(number%2===0){
                                       return false;
                               };
                        //依次判断是否能被奇数整除,最大循环为数值的开方
                                var squareRoot=Math.sqrt(number);
                                 for(var i=3;i<=squareRoot;i+=2){
                                  if (number%i===0) {
                                        return false;
                                   };
                              }
                              return true;
                        }
                         var s = isPrime(num)==true?"是素数":"不是素数";
    
    
                        console.log(num+s);*/
    
    
    
    
    
        /***********************************
        13.(提高题)将100元整钞换成20元、10元、5元、2元、1元零钱,要求零钱总张数为30张,求有多少种换法?假如要求每种纸币必须至少有一张,又有多少种换法呢?
        ***********************************/
    
    
    
        /*   var n = 0;
           for(var i = 0;i<100;i++){
              for(var j = 0;j<50;j++){
                for(var k = 0;k<20;k++){
                    for(var l = 0;l<10;l++){
                          for(var m = 0;m<5;m++){
                              if((i*20+j*10+k*5+l*2+m) == 100 && i+j+k+l+m ==30){
                                    n++;
                                    console.log("第"+n+"种情况:"+"1元"+i+"张,2元"+j+"张,5元"+k+"张,10元"+l+"张,20元"+m+"张");
                              }
                        }
                    }
                }
              }
           }
    
           console.log(n);*/
    
    
    
        /*var n = 0;
         for(var i = 1;i<100;i++){
            for(var j = 1;j<50;j++){
              for(var k = 1;k<20;k++){
                  for(var l = 1;l<10;l++){
                        for(var m = 1;m<5;m++){
                            if((i*20+j*10+k*5+l*2+m) == 100){
                                  n++;
                                  console.log("第"+n+"种情况:"+"1元"+i+"张,2元"+j+"张,5元"+k+"张,10元"+l+"张,20元"+m+"张");
                            }
                      }
                  }
              }
            }
         }
    
         console.log(n);*/
        </script>
    </body>
    
    </html>
    

      

  • 相关阅读:
    高性能JS载入脚本并执行
    JavaScriptDOM高级程序设计myLogger.js
    (旧文重贴)看看这两段代码有什么不同?
    (旧文重贴)原来进行Authorization:basic的时候,后面的credentials就是
    (旧文重贴)终于把ServerAppUnaviable的问题搞定了。
    (旧文重贴)花了一个小时时间,给项目组作了一个汉字到拼音的转换
    (旧文重贴)昨晚和谢晓讨论了一下多组件服务器验证的问题
    大家好!我是浪潮通软的鞠强,初来贵地,请多多指教!
    (旧文重贴)vs.net的asp.net程序无法在winserver2003上打开,终于搞定了,郁闷ing。。。
    (旧文重贴)SQLDMO好像只能在打有sp3的sql2000上用?
  • 原文地址:https://www.cnblogs.com/SunlikeLWL/p/7218376.html
Copyright © 2011-2022 走看看