Skip to content

Commit

Permalink
added rangeSum
Browse files Browse the repository at this point in the history
  • Loading branch information
Philip Obosi committed Feb 20, 2019
1 parent cf5a497 commit c5c581d
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 0 deletions.
35 changes: 35 additions & 0 deletions Beginner/rangeSum/index-SOLUTION.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// USING A FOR LOOP
function rangeSum(arr) {
let sum = 0;
for (i = arr[0]; i <= arr[1]; i++) {
sum += i;
}
return sum;
}

// USING THE ARITHMETIC PROGRESSION FORMULA
function rangeSum(arr) {
let arrList = [];
for (i = arr[0]; i <= arr[1]; i++) {
arrList.push(i);
}
return (arrList.length * (arr[0] + arr[1])) / 2;
}

// USING RECURSION
function rangeSum(arr) {
if (arr[0] == arr[1]) {
return arr[0];
} else {
return rangeSum([arr[0], arr[1] - 1]) + arr[1];
}
}

// USING .REDUCE()
function rangeSum(arr) {
let arrList = [];
for (i = arr[0]; i <= arr[1]; i++) {
arrList.push(i);
}
return arrList.reduce((acc, num) => acc + num, 0);
}
5 changes: 5 additions & 0 deletions Beginner/rangeSum/index-START.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
function rangeSum(arr) {
// Code goes here
}

module.exports = rangeSum;
Empty file added Beginner/rangeSum/test.js
Empty file.

0 comments on commit c5c581d

Please sign in to comment.