Sum All Numbers in a Range

来源:互联网 发布:hadoop在linux部署 编辑:程序博客网 时间:2024/06/18 14:41

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

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

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]);

/公式方法/(a+b)*(b-a+1)/2
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]));

原创粉丝点击