Files
freeCodeCamp/curriculum/challenges/english/blocks/daily-coding-challenges-javascript/69f8c998d78ad3171a0713bc.md
T

1.1 KiB

id, title, challengeType, dashedName
id title challengeType dashedName
69f8c998d78ad3171a0713bc Challenge 289: Sum of Differences 28 challenge-289

--description--

Given an array of numbers, return the sum of the differences between each number and the one that follows it.

For example, given [1, 3, 4], return 3 (2 + 1).

--hints--

sumOfDifferences([1, 3, 4]) should return 3.

assert.equal(sumOfDifferences([1, 3, 4]), 3);

sumOfDifferences([5, -3, 3, 9, 10]) should return 5.

assert.equal(sumOfDifferences([5, -3, 3, 9, 10]), 5);

sumOfDifferences([9, 6, 15, -20, 33, 14, 25, 16, -7]) should return -16.

assert.equal(sumOfDifferences([9, 6, 15, -20, 33, 14, 25, 16, -7]), -16);

sumOfDifferences([50, 102, -46, 82, -49, 29, 71, 902, -237, 111, -61, 75]) should return 25.

assert.equal(sumOfDifferences([50, 102, -46, 82, -49, 29, 71, 902, -237, 111, -61, 75]), 25);

--seed--

--seed-contents--

function sumOfDifferences(arr) {

  return arr;
}

--solutions--

function sumOfDifferences(arr) {
  return arr.slice(0, -1).reduce((sum, n, i) => sum + (arr[i + 1] - n), 0);
}