Luane 9440cca69f Added example Input/Output to challenge (#34738)
* Added example Input/Output to challenge

Input/Output example will make it clear what the challenge is asking the camper to do.

* Formatting changes made to file

* Made minor changes in formatting

Added <code> tag to single line code.

* Formatting update

* Added requested formatting changes

* Refactored sentence and removed earlier example
2019-03-02 02:26:23 -05:00

1.9 KiB

id, title, isRequired, challengeType
id title isRequired challengeType
a3566b1109230028080c9345 Sum All Numbers in a Range true 5

Description

We'll pass you an array of two numbers. Return the sum of those two numbers plus the sum of all the numbers between them. The lowest number will not always come first.

For example, sumAll([4,1]) should return 10 because sum of all the numbers between 1 and 4 (both inclusive) is 10.

Remember to use Read-Search-Ask if you get stuck. Try to pair program. Write your own code.

Instructions

Tests

tests:
  - text: <code>sumAll([1, 4])</code> should return a number.
    testString: assert(typeof sumAll([1, 4]) === 'number', '<code>sumAll([1, 4])</code> should return a number.');
  - text: <code>sumAll([1, 4])</code> should return 10.
    testString: assert.deepEqual(sumAll([1, 4]), 10, '<code>sumAll([1, 4])</code> should return 10.');
  - text: <code>sumAll([4, 1])</code> should return 10.
    testString: assert.deepEqual(sumAll([4, 1]), 10, '<code>sumAll([4, 1])</code> should return 10.');
  - text: <code>sumAll([5, 10])</code> should return 45.
    testString: assert.deepEqual(sumAll([5, 10]), 45, '<code>sumAll([5, 10])</code> should return 45.');
  - text: <code>sumAll([10, 5])</code> should return 45.
    testString: assert.deepEqual(sumAll([10, 5]), 45, '<code>sumAll([10, 5])</code> should return 45.');

Challenge Seed

function sumAll(arr) {
  return 1;
}

sumAll([1, 4]);

Solution

function sumAll(arr) {
  var sum = 0;
  arr.sort(function(a,b) {return a-b;});
  for (var i = arr[0]; i <= arr[1]; i++) {
    sum += i;
  }
  return sum;
}