diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..8a6da6f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:5501", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..6f3a291 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "liveServer.settings.port": 5501 +} \ No newline at end of file diff --git a/src/factorial.js b/src/factorial.js index 4f3ae70..eac8cb6 100644 --- a/src/factorial.js +++ b/src/factorial.js @@ -1,5 +1,14 @@ +var factor = [] const factorial = (number) => { // your code here + //The factor of 0 (0!) is 1, and the factor of 1 (1!) is 1 too + if (number == 0 || number == 1) { + return 1; + } + //if the factor + if (factor[number] > 0) { + return factor[number]; + } + return factor[number] = factorial(number-1) * number; } - module.exports = factorial; \ No newline at end of file diff --git a/src/fibonacci.js b/src/fibonacci.js index ea3270f..aa77230 100644 --- a/src/fibonacci.js +++ b/src/fibonacci.js @@ -1,5 +1,24 @@ const fibonacci = (n) => { // your code here + var fibonacciNumbers = [] + var numbers = [0, 1]; + var sum; + var numberi = 0; + if(n == 0){ + fibonacciNumbers = [numbers[0]] + }else if (n == 1) { + fibonacciNumbers = [numbers[1]] + } else { + fibonacciNumbers = [numbers[1]] + for (numberi = 1; numberi < n; numberi++) + { + sum = numbers[0] + numbers[1]; + numbers[0] = numbers[1]; + numbers[1] = sum; + fibonacciNumbers.push(sum) + } + } + return fibonacciNumbers } module.exports = fibonacci; \ No newline at end of file diff --git a/src/primalidad.js b/src/primalidad.js index 8bdb849..ec4348f 100644 --- a/src/primalidad.js +++ b/src/primalidad.js @@ -1,5 +1,14 @@ const trialDivision = (number) => { // your code here + if (number < 2) { + return false; + } + for (var i = 2; i <= number-1; i++){ + if (number % i === 0 || !Number.isInteger(number)){ + return false; + } + } + return true; } module.exports = trialDivision; \ No newline at end of file