How to find the least common multiple of a range of numbers?

前端 未结 14 1686
一个人的身影
一个人的身影 2020-12-08 08:32

Given an array of two numbers, let them define the start and end of a range of numbers. For example, [2,6] means the range 2,3,4,5,6. I want to write javascrip

14条回答
  •  野趣味
    野趣味 (楼主)
    2020-12-08 08:38

    function lcm(arr) {
      var max = Math.max(arr[0],arr[1]),
          min = Math.min(arr[0],arr[1]),
          lcm = max;
      var calcLcm = function(a,b){
        var mult=1;
        for(var j=1; j<=a; j++){
          mult=b*j;
          if(mult%a === 0){
            return mult;
          }
        }
      };
      for(var i=max-1;i>=min;i--){
        lcm=calcLcm(i,lcm);
      }
      return lcm;
    }
    lcm([1,13]); //should return 360360.
    

提交回复
热议问题