Last active
April 30, 2018 20:20
-
-
Save mwakipesile/2793b45399c4929a2cf2739b0ceb28da to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Second argument's omitted, default to factors [3, 5] | |
console.log(sumOfMultiples(10)) // returns 23 | |
console.log(sumOfMultiples(100)) // returns 2318 | |
console.log(sumOfMultiples(1000)) // returns 233168 | |
// Limit is smaller than all factors (3, 5) | |
console.log(sumOfMultiples(1)) // returns 0 | |
// Limit is smaller than some factor(s) | |
console.log(sumOfMultiples(4)) // returns 3 | |
// Limit is equal to the factor | |
console.log(sumOfMultiples(20, [20])) // returns 0 | |
// Second argument(factors) is given | |
console.log(sumOfMultiples(20, [7, 13, 17])) // returns 51 | |
console.log(sumOfMultiples(150, [5, 6, 8])) // returns 4419 | |
console.log(sumOfMultiples(10000, [43, 47])) // returns 2203160 | |
// Collect only unique multiples | |
console.log(sumOfMultiples(13, [3, 6, 12])) // returns 30 | |
// Bad inputs | |
console.log(sumOfMultiples(20, [])) // returns null | |
console.log(sumOfMultiples(20, [0])) // returns null | |
console.log(sumOfMultiples('20')) // returns null | |
console.log(sumOfMultiples(20, [7, 0, 13, 17])) // returns null | |
console.log(sumOfMultiples(20, [7, undefined, 17])) // returns null | |
console.log(sumOfMultiples(20, [7, null, 13, 17])) // returns null | |
console.log(sumOfMultiples(20, [7, -13, 17])) // returns null | |
console.log(sumOfMultiples(20, [7, Infinity, 17])) // returns null | |
console.log(sumOfMultiples(Infinity, [7, 13, 17])) // returns null | |
console.log(sumOfMultiples(20, [7, [13], 17])) // returns null | |
console.log(sumOfMultiples(20, [[7, 13]])) // returns null | |
console.log(sumOfMultiples(0, [7, 13])) // returns null |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment