首页 > 其他 > 详细

Sum All Numbers in a Range

时间:2017-07-06 19:47:15      阅读:180      评论:0      收藏:0      [点我收藏+]

我们会传递给你一个包含两个数字的数组。返回这两个数字和它们之间所有数字的和。

最小的数字并非总在最前面。

技术分享
function sumAll(arr) {
  var result=0;
  a_start=Math.min(arr[0],arr[1]);
  a_end=Math.max(arr[0],arr[1]);
  while(a_start<=a_end){
    result+=a_start;
    a_start++;
  }
  return result;
}

sumAll([1, 4]);

/*公式方法*/
function sumAll(arr) {
  return (arr[0] + arr[1])*(Math.abs(arr[0] - arr[1]) + 1)/2;
}

/*利用reduce来进行求和*/
function sumAll(arr) {
   var arryA=[];
   var max=Math.max.apply(null,arr);
   var min=Math.min.apply(null,arr);
   var sum=0;
   var sumFun=function(max,min){
      for(var i=0;i<(max-min+1);i++){
         arryA.push(min+i);
      }
      console.log(arryA);
      var value=arryA.reduce(function(previousValue,currentValue){
         return previousValue+currentValue;
      });
      return value;
   };
   sum=sumFun(max,min);
   return sum;
}
console.log(sumAll([5, 10]));

Sum All Numbers in a Range

原文:http://www.cnblogs.com/codepen2010/p/7127730.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!