diff --git a/src/functions-and-arrays.js b/src/functions-and-arrays.js index 2fcd81e6e..b47563b58 100644 --- a/src/functions-and-arrays.js +++ b/src/functions-and-arrays.js @@ -1,4 +1,11 @@ // Find the maximum +function maxOfTwoNumbers(num1, num2) { + if (num1 > num2) { + return num1; + } else { + return num2; + } +} // Finding Longest Word var words = [ @@ -11,14 +18,57 @@ var words = [ 'crackpot' ]; +function findLongestWord(words) { + var longestWord = ""; + if (words.length === 0) { + return undefined; + } + for (var i = 0; i < words.length; i++) { + if (longestWord.length < words[i].length) { + longestWord = words[i]; + } else { + continue; + } + } + return longestWord; +} + // Calculating a Sum var numbers = [6, 12, 1, 18, 13, 16, 2, 1, 8, 10]; - +/* +function sumArray(numbers) { + var sum = 0; + numbers.forEach(function(num) { + sum += num; + }) +}; +*/ +function sumArray(numbers) { + var sum = 0; + if (numbers.length === 0) { + return 0; + } + for(var i = 0; i < numbers.length; i++) { + sum += numbers[i]; + } + return sum; +}; // Calculate the Average var numbersAvg = [2, 6, 9, 10, 7, 4, 1, 9]; +function averageNumbers (numbers) { + var sum = 0; + if (numbers.length === 0) { + return undefined; + } + for (var i=0; i < numbers.length; i++) { + sum += numbers[i]; + } + return (sum / numbers.length); +} + // Array of Strings var wordsArr = [ 'seat', @@ -33,6 +83,17 @@ var wordsArr = [ 'palace' ]; +function averageWordLength (wordsArr) { + if (wordsArr.length === 0) { + return undefined; + } + var sumLetters = 0; + for (var i = 0; i < wordsArr.length; i++) { + sumLetters += wordsArr[i].length; + } + return (sumLetters / wordsArr.length) +} + // Unique Arrays var wordsUnique = [ 'crab', @@ -48,6 +109,19 @@ var wordsUnique = [ 'bring' ]; +function uniquifyArray (arr){ + if (arr.length === 0) { + return undefined; + } + var newArr = []; + for (var i = arr.length-1; i >= 0; i--) { + if (arr.indexOf(arr[i]) === i) { + newArr.unshift(arr[i]) + } + } + return newArr; +} + // Finding Elements var wordsFind = [ 'machine', @@ -60,6 +134,18 @@ var wordsFind = [ 'disobedience' ]; +function doesWordExist(arr, word) { + if (arr.length === 0) { + return false; + } + for(var i = 0; i < wordsFind.length; i++) { + if (arr[i] === word) { + return true; + } + } + return false; +} + // Counting Repetion var wordsCount = [ 'machine', @@ -74,6 +160,20 @@ var wordsCount = [ 'disobedience', 'matter' ]; + +function howManyTimes(arr, word) { + if (arr.length === 0) { + return false; + } + counter = 0; + for(var i = 0; i < arr.length; i++) { + if (arr[i] === word) { + counter++; + } + } + return counter; +} + // Bonus Quest var matrix = [