函数小练习

1 写一个函数,用户输入任意两个数字的任意算数运算(简单的计算器小功能),并能弹出运算后的结果

<script>

    function getVa(a,b,c){
        var re;
        //一定要== 如果是= 结果是错的
        if(b == '+'){
            re = a + c;
        }else if(b == '-'){
            re = a - c;
        }else if(b == '*'){
            re = a * c;
        }else{
            re = a / c; 
        }
        return re;
    }
    var num1 = parseFloat(prompt('请输入第一个数字:'));
    var num2 = prompt('请输入+-*/:');
    var num3 = parseFloat(prompt('请输入第二个数字:'));
    getVa(num1,num2,num3);
    alert(getVa(num1,num2,num3));
    
</script>

2 写一个函数,用户输入任意三个不同数字的最大值,并能弹出运算后的结果

<script>
     
       function getMax(a,b,c){
           max = '';
        if(a > b && a > c){
            max += a;
        }else if(b > a && b > c){
            max += b;
        }else{
            max += c;
        }
        return max;
        }
       var num1 = parseFloat(prompt('请输入第一个数:')); 
       var num2 = parseFloat(prompt('请输入第二个数:')); 
       var num3 = parseFloat(prompt('请输入第三个数:')); 
       getMax(num1,num2,num3);
       alert(getMax(num1,num2,num3));
        
    </script>

3 写一个函数,用户输入一个数,判断是否是质数(只能被1或者自身整除的数)

<script>
   
    function getPri(num){
      if (num1 <= 1){
        re = '该值不合法'
      }else{
        var flag = true;
        for(i = 2; i < num1; i++){
          if(num1 % i == 0){
            flag = false;
          }
        }
        if(flag){
          re = num1 + '是质数';
        }else{
          re = num1 + '不是质数';
        }
      }
      return num = re;
    }
     var num1 =parseFloat(prompt('请输入一个整数')) ;
     getPri(num1);
     alert(getPri(num1));
    
</script>

4 写一个函数,用户输入任意两个数字的最大值,并能弹出运算后的结果

<script>
 
    function getMax(num1,num2){
       var max
      if(num1 >= num2){
        max = num1;
      }else{
        max = num2;
      }
      return max;
    }
    var num1 = parseFloat(prompt('请输入第一个数字'));
    var num2 = parseFloat(prompt('请输入第二个数字'));
    var re = getMax(num1,num2);
    alert(re);


  </script>

利用函数求任意个数的最大值

<script>

       

        function getMax(){

            var max = arguments[0];

            for(var i = 1; i < arguments.length; i++){

                if(arguments[i] > max){

                    max = arguments[i];

                }

            }

            return max;

        }

       

        console.log( getMax(1,2,3,155));

        console.log( getMax(28,44,3,15));

        console.log( getMax(21,2,3,5));

        console.log( getMax(33,2,56,15));

    </script>

冒泡排序

<script>

       

        function sort(arr){

            for(var i = 0;i < arr.length -1 ; i++ ){

                for(var j = 0; j < arr.length - i -1;j++){

                    if(arr[j] > arr[j + 1]){

                        var temp = arr[j];

                        arr[j] = arr[j+1];

                        arr[j+1] = temp;

                    }

                }

            }

            return arr;

        }

        var arr1 = sort([1,6,8,9]);

        console.log(arr1);

        var arr2 = sort([11,63,18,9]);s

        console.log(arr2);

        var arr3 = sort([21,6,18,91]);

        console.log(arr3);

    </script>

利用函数封装的方式,翻转任意一个数组

<script>

        function reverse(arr){

            var newArr = [];

           for(var i = arr.length - 1; i >= 0; i--){

               newArr[newArr.length] = arr[i];

           }

           return newArr;

        }

        var arr1 = reverse([1,2,4,6,8]);

        console.log(arr1);

        var arr2 = reverse([1,2,3,4,5]);

        console.log(arr2);

        var arr3 = reverse([11,22,33,44,55]);

        console.log(arr3);

    </script>

输入一个年份,输出当前年份2月份的天数

 <script>

       

        function backDay(){

            var year = prompt('请输入年份:');

            if(runyear(year)){

                alert('当前年份是闰年,2月份有29天');

            }else{

                alert('当前年份不是闰年,2月份有28天');

            }

        }

        backDay();

        function runyear(year){

            var flag = false;

         if(year % 4 == 0 && year % 100 !== 0 || year % 400 == 0){

               flag = true;

            }

            return flag;

        }

     

    </script>

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值