From c9ba0aff0decd6894167a056fdabfb493efd565d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Sendra?= Date: Thu, 19 Oct 2023 18:05:00 +0200 Subject: [PATCH 1/2] splitting teams --- src/functions-and-arrays.js | 60 +++++++++++++++++++++++++++++++++---- 1 file changed, 54 insertions(+), 6 deletions(-) diff --git a/src/functions-and-arrays.js b/src/functions-and-arrays.js index 3a7dbec41..a51707294 100644 --- a/src/functions-and-arrays.js +++ b/src/functions-and-arrays.js @@ -1,19 +1,47 @@ // Iteration #1: Find the maximum -function maxOfTwoNumbers() {} + +function maxOfTwoNumbers(num1, num2) { + if(num1 > num2) { + return num1; + } else { + return num2; + } +} + // Iteration #2: Find longest word -const words = ['mystery', 'brother', 'aviator', 'crocodile', 'pearl', 'orchard', 'crackpot']; -function findLongestWord() {} +function findLongestWord(wordsArray) { + if (!wordsArray.length) { + return null; + } + let longestWord = ''; + + for (let word of wordsArray) { + if (word.length > longestWord.length) { + longestWord = word; + } + } + + return longestWord; +} +const words = ['mystery', 'brother', 'aviator', 'crocodile', 'pearl', 'orchard', 'crackpot']; +console.log(findLongestWord(words)); // Iteration #3: Calculate the sum const numbers = [6, 12, 1, 18, 13, 16, 2, 1, 8, 10]; -function sumNumbers() {} +function sumNumbers(numbersArray) { + let sum = 0 + for (let i = 0; i < numbersArray.length; i++) { + sum += numbersArray [i]; + } + return sum; +} @@ -26,7 +54,19 @@ function sum() {} // Level 1: Array of numbers const numbersAvg = [2, 6, 9, 10, 7, 4, 1, 9]; -function averageNumbers() {} +function averageNumbers(numbersList) { + if (!numbersList.length) { + return null; + } + let sum = 0; + for (let i = 0; i < averageNumbers.length; i++) { + sum += numbersList [i]; + } + let average = sum / numbersList.length; + + return average; +} + // Level 2: Array of strings @@ -52,7 +92,15 @@ const wordsUnique = [ 'bring' ]; -function uniquifyArray() {} +function uniquifyArray(wordsList) { + let uniquifyArray = [] + for (let i=0; i < wordsList.length; i++) { + if (!uniquifyArray.includes(words)) { + return null; + } + } + } + From e657a51813ddfcfedc3aeeeb3254ea1c97a77666 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Sendra?= Date: Fri, 20 Oct 2023 00:14:11 +0200 Subject: [PATCH 2/2] all mandatory iterations are done plus some bonus --- src/functions-and-arrays.js | 143 +++++++++++++++++++++++++++++------- 1 file changed, 117 insertions(+), 26 deletions(-) diff --git a/src/functions-and-arrays.js b/src/functions-and-arrays.js index a51707294..0db1d1edd 100644 --- a/src/functions-and-arrays.js +++ b/src/functions-and-arrays.js @@ -15,18 +15,17 @@ function maxOfTwoNumbers(num1, num2) { function findLongestWord(wordsArray) { - if (!wordsArray.length) { - return null; - } - let longestWord = ''; - - for (let word of wordsArray) { - if (word.length > longestWord.length) { - longestWord = word; - } - } - - return longestWord; + if (wordsArray.length === 0) { + return null; + } + let longestWord = '' + for (i = 0; i < wordsArray.length; i++) { + let word = wordsArray[i] + if (word.length > longestWord.length) { + longestWord = word; + } + } + return longestWord; } const words = ['mystery', 'brother', 'aviator', 'crocodile', 'pearl', 'orchard', 'crackpot']; console.log(findLongestWord(words)); @@ -46,7 +45,30 @@ function sumNumbers(numbersArray) { // Iteration #3.1 Bonus: -function sum() {} +function sum(mixedValuesArr) { + if (mixedValuesArr.length === 0) { + return 0; + } + let totalOfTheMixedArray2 = 0; + + for (let i = 0; i < mixedValuesArr.length; i++) { + if (typeof mixedValuesArr[i] === 'boolean') { + if (mixedValuesArr[i] === true) { + totalOfTheMixedArray2++; + } + } + else if (typeof mixedValuesArr[i] === 'string') { + totalOfTheMixedArray2 += mixedValuesArr[i].length; + } + else if (typeof mixedValuesArr[i] === 'number') { + totalOfTheMixedArray2 += mixedValuesArr[i] + } + else { + throw new Error("The error is caused because this function only works with numbers, booleans and stings datatypes"); + } + } + return totalOfTheMixedArray2 +} @@ -55,11 +77,11 @@ function sum() {} const numbersAvg = [2, 6, 9, 10, 7, 4, 1, 9]; function averageNumbers(numbersList) { - if (!numbersList.length) { + if (numbersList.length === 0) { return null; } let sum = 0; - for (let i = 0; i < averageNumbers.length; i++) { + for (let i = 0; i < numbersList.length; i++) { sum += numbersList [i]; } let average = sum / numbersList.length; @@ -72,10 +94,39 @@ function averageNumbers(numbersList) { // Level 2: Array of strings const wordsArr = ['seat', 'correspond', 'linen', 'motif', 'hole', 'smell', 'smart', 'chaos', 'fuel', 'palace']; -function averageWordLength() { } +function averageWordLength(arrayOfWords) { + if (arrayOfWords.length === 0) { + return null; + } + let sum = 0 + for (i = 0; i