From 7f6b7dc5b14aa12afe1fbe7d318b7173eb85fcc9 Mon Sep 17 00:00:00 2001 From: vfonsah Date: Fri, 28 Aug 2020 23:50:20 +0100 Subject: [PATCH] my TDD exercises solutions --- leapYears/leapYears.js | 8 ++++---- removeFromArray/removeFromArray.js | 20 +++++++++++++++++--- repeatString/repeatString.js | 14 +++++++++++--- reverseString/reverseString.js | 13 +++++++++---- sumAll/sumAll.js | 15 ++++++++++++--- tempConversion/tempConversion.js | 16 ++++++++-------- 6 files changed, 61 insertions(+), 25 deletions(-) diff --git a/leapYears/leapYears.js b/leapYears/leapYears.js index ac786a2..a45504f 100644 --- a/leapYears/leapYears.js +++ b/leapYears/leapYears.js @@ -1,5 +1,5 @@ -const leapYears = function() { +const leapYears = function (year) { + return year % 4 == 0 && (year % 100 !== 0 || year % 400 == 0); +}; -} - -module.exports = leapYears +module.exports = leapYears; diff --git a/removeFromArray/removeFromArray.js b/removeFromArray/removeFromArray.js index 11efd5c..c524692 100644 --- a/removeFromArray/removeFromArray.js +++ b/removeFromArray/removeFromArray.js @@ -1,5 +1,19 @@ -const removeFromArray = function() { +const removeFromArray = function (...theArgs) { + let filteredArr = [], + arr = theArgs[0]; -} + for (let i = 0; i < arr.length; i++) { + // theArgs.map((arg) => { + // if (arr[i] != arg) { + // filteredArr.push(arr[i]); + // } + // }); + if (!theArgs.includes(arr[i])) { + filteredArr.push(arr[i]); + } + } -module.exports = removeFromArray + return filteredArr; +}; + +module.exports = removeFromArray; diff --git a/repeatString/repeatString.js b/repeatString/repeatString.js index 770119a..499ee42 100644 --- a/repeatString/repeatString.js +++ b/repeatString/repeatString.js @@ -1,5 +1,13 @@ -const repeatString = function() { +const repeatString = function (s, n) { + let newString = ""; + if (n < 0) { + newString = "ERROR"; + } -} + for (let i = 0; i < n; i++) { + newString = newString + s; + } + return newString; +}; -module.exports = repeatString +module.exports = repeatString; diff --git a/reverseString/reverseString.js b/reverseString/reverseString.js index febb577..10be664 100644 --- a/reverseString/reverseString.js +++ b/reverseString/reverseString.js @@ -1,5 +1,10 @@ -const reverseString = function() { +const reverseString = function (s) { + s = s.split(""); + let newWord = []; + for (let i = s.length - 1; i >= 0; i--) { + newWord.push(s[i]); + } + return newWord.join(""); +}; -} - -module.exports = reverseString +module.exports = reverseString; diff --git a/sumAll/sumAll.js b/sumAll/sumAll.js index 4030fe8..9cac9ef 100644 --- a/sumAll/sumAll.js +++ b/sumAll/sumAll.js @@ -1,5 +1,14 @@ -const sumAll = function() { +const sumAll = function (a, b) { + let max = a > b ? a : b, + min = a < b ? a : b; -} + let sum = 0; + for (let i = min; i <= max; i++) { + sum += i; + } + return a < 0 || b < 0 || typeof a !== "number" || typeof b !== "number" + ? "ERROR" + : sum; +}; -module.exports = sumAll +module.exports = sumAll; diff --git a/tempConversion/tempConversion.js b/tempConversion/tempConversion.js index 4fa21ee..e1d004b 100644 --- a/tempConversion/tempConversion.js +++ b/tempConversion/tempConversion.js @@ -1,12 +1,12 @@ -const ftoc = function() { +const ftoc = function (temp) { + return Math.round((((temp - 32) * 5) / 9) * 10) / 10; +}; -} - -const ctof = function() { - -} +const ctof = function (temp) { + return Math.round(((temp * 9) / 5 + 32) * 10) / 10; +}; module.exports = { ftoc, - ctof -} + ctof, +};