zoukankan      html  css  js  c++  java
  • 案例(-)

    1.如果今天是星期二,那么1000天后是星期几?用户输入一个天数,计算这个天数是星期几?

     案例分析:如果今天是星期2,7天后是星期2;

                        如果今天是星期2,14天后是星期2;

                       ..............................  21天后是星期2;

                                                        23 天后是星期4

                        如果今天的1天后是星期3,8天后也是星期3,15天以后也是星期3

                            49天后,也是星期2.因为49%7 结果为0

                           79天后,是星期4。因为79%7 结果是2;相当于2天后

                         所以1000后的星期几就是要看简化为相当 于几天后

                 1000%7 结果是6,相当于6天后的星期,6天后就是星期1

    //用户输入今天星期几
    var today=parseInt(prompt('请输入今天是星期几','1'));
    // 用户输入多少天后
    var num=parseInt(prompt('请输入多少天后','1000'));
    // 假设今天是星期1,7天后也是星期1
    // 14天后也是星期1
    // 15天后是星期2
    // 17天后是星期4
    // num%7=day (满足num%7==0)
    // (num%7+today)%7 =day (满足 num%7 !=0 )
    var day= (num%7+today)%7;
    if(day==0){
    alert(num+'天后是星期天')
    }else{
    alert('假设今天是星期'+today+','+num+'天后是星期'+day);
    }

    <script type="text/javascript">
             var num=parseInt(prompt('请输入今天星期几','2'));
             var week=['星期日','星期一','星期二','星期三','星期四','星期五','星期六']
             var day=(1000%7+num)%7;
               console.log(week[day]);
        </script>

    2. 用户输入一个三位数,弹出各个数位的和

      比如: 用户输入155 ,就弹出11

                 用户输入316 ,就弹出10

                 用户输入989;就弹出26

                  用户输入678; 就弹出21

    分析: 用户输入的数字都很简单,需要想办法拆分得到每个位数,再进行求和

            个位数: 155%10=5;

              十位数:parseInt(155/10)%10=5;

               百位数:   parseInt(155/100)=1

     var num= parseInt(prompt('请输入一个三位数','234'));
              var ge=num%10;
              var shi=parseInt((num/10)%10) ;
              var bai=parseInt(num/100);
              var sum=ge+shi+bai;
              console.log(sum);

     3.利用arguments对象,输出无限参数之和

      <script type="text/javascript">
             function sum(){
                var sum=0;
                for(var i=0; i<arguments.length; i++){
                    sum+=arguments[i];
                }
    
                return sum;
             }
             console.log(sum(1,43,542,54,54));
        </script>

    4.设计一个函数,check如果只有一个参数,那么就是检查这个数是否是偶数。如果传两个参数,就检查这两个参数奇偶性是否相同。

        <script type="text/javascript">
             function check(){
                 switch(arguments.length){
                    case 1:
                    return arguments[0]%2==0 ? true :false;
                    break;
                    case 2:
                    return (arguments[0]+arguments[1])%2==0 ? true:false;
                    break;
                    default:
                    throw new Error('输入错误,请检查。只支持1 和2 个参数');
                 }
             }
       console.log(check(8))
       console.log(check(8,8));
       console.log(check(8,8,8));
        </script>

    arguments的功能,是模拟函数的重载,使用一个函数,根据参数的个数不同,有不同的作用。

    比如我们做设计一个sum函数,如果传进来一个参数,就得到1;如果是传2个参数,那么返回两个数字的和。比如:

     

    //模拟函数重载,如果有两个参数,返回两个数的和,就要用arguments.length实际参数的个数,进行判断
    function sum(a,b){
       switch(arguments.length){
          case 1:
               return ++a;
              break;
           case 2:
               return a + b;
               break;
       }
       /*if(arguments.length == 1){
           return ++a;
      }else if(arguments.length == 2){
           return a + b;
           //return arguments[0] + arguments[1];
       }*/
    }
    console.log(sum(10))
    console.log(sum(10,2))

    5.编写函数maxr(char) 返回字符串char中最长的连续重复字母

     

      

     

     

  • 相关阅读:
    faked 一个用于 mock 后端 API 的轻量工具
    分享开源 Markdown 编辑器 Mditor 的「桌面版」
    一个 MVC 框架以 MVVM 之「魂」复活了!
    简单的内存缓存模块
    Node 多进程并发控制小模块
    Confman
    用 Nokitjs 解决前端开发中的跨域问题
    LEK分布式日志系统搭建
    hello world2
    hello world!
  • 原文地址:https://www.cnblogs.com/smivico/p/7714659.html
Copyright © 2011-2022 走看看