Created
November 20, 2023 15:07
-
-
Save JoshuaRotimi/5ffb018554ed03c2235d2f0124fb8c55 to your computer and use it in GitHub Desktop.
Returns all numbers either even, odd or prime between a range of numbers.
This file contains hidden or 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
| function numbersBetween(num1, num2) { | |
| const min = Math.min(num1, num2); | |
| const max = Math.max(num1, num2); | |
| const result = []; | |
| for (let i = min + 1; i < max; i++) { | |
| result.push(i); | |
| } | |
| return result; | |
| } | |
| function isPrime(number) { | |
| if (number <= 1) { | |
| return false; | |
| } | |
| for (let i = 2; i <= Math.sqrt(number); i++) { | |
| if (number % i === 0) { | |
| return false; | |
| } | |
| } | |
| return true; | |
| } | |
| const betweenNums = (a, b, type) => { | |
| const nums = numbersBetween(a, b); | |
| if (type === 'even') { | |
| return nums.filter(item => item % 2 === 0); | |
| } else if (type === 'odd') { | |
| return nums.filter(item => item % 2 !== 0); | |
| } else if (type === 'prime') { | |
| return nums.filter(item => isPrime(item)); | |
| } | |
| return nums; | |
| } | |
| console.log(betweenNums(3, 11, 'even')); | |
| console.log(betweenNums(15, 1, 'odd')); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment