From 4b09e822bd0c07dfee4bfc5ae47b87385e96091e Mon Sep 17 00:00:00 2001 From: Kayan Date: Mon, 22 Feb 2021 12:28:26 -0500 Subject: [PATCH 1/5] add code to wordCount(input) function --- Day01/Problem01.js | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/Day01/Problem01.js b/Day01/Problem01.js index 6ad3c39..168883c 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -7,17 +7,27 @@ class Problem { */ wordCount(input) { // code goes here - return null; + //separate input sentence into Words + let words = input.split(" "); + + return words.length; } /** - * Have the function LetterCapitalize(str) take the str parameter being passed and capitalize the first + * Have the function LetterCapitalize(str) take the str parameter being passed and capitalize the first letter of each word. Words will be separated by only one space. - * + * */ letterCapitalize(str) { - return null; + let words = str.split(" "); + let sentence = ""; + let newWord =""; + for(let i = 0; i< words.length; i++){ + newWord = words[i].charAt(0).toUpperCase()+ words[i].substr(words[i].charAt(1), (words[i].length) - 1) + " "; + sentence += newWord; + } + return sentence; } @@ -55,4 +65,4 @@ class Problem { } -module.exports = Problem; \ No newline at end of file +module.exports = Problem; From d529eb3ca6fa346f922593faca658ea3ddd1f3d7 Mon Sep 17 00:00:00 2001 From: Kayan Date: Mon, 22 Feb 2021 12:42:46 -0500 Subject: [PATCH 2/5] add code to letterCapitalize(str) function --- Day01/Problem01.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Day01/Problem01.js b/Day01/Problem01.js index 168883c..87833d2 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -22,12 +22,13 @@ class Problem { letterCapitalize(str) { let words = str.split(" "); let sentence = ""; - let newWord =""; + for(let i = 0; i< words.length; i++){ - newWord = words[i].charAt(0).toUpperCase()+ words[i].substr(words[i].charAt(1), (words[i].length) - 1) + " "; - sentence += newWord; + words[i] = words[i].charAt(0).toUpperCase()+ words[i].substr(1); } - return sentence; + + sentence = words.join(" "); + return sentence; } From 71856360e82b5119df1ea7ced1b1bdfb38bb3bb7 Mon Sep 17 00:00:00 2001 From: Kayan Date: Mon, 22 Feb 2021 13:04:52 -0500 Subject: [PATCH 3/5] add code to firstReverse(input) function --- Day01/Problem01.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Day01/Problem01.js b/Day01/Problem01.js index 87833d2..06c62a0 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -40,7 +40,16 @@ class Problem { */ firstReverse(input){ - return null; + //split sentence into letters + //reverse letters + //join reversed letters + //return joined reversed letters + + let letters = input.split(""); + let reverseLetters = letters.reverse(); + let stringReversed = reverseLetters.join(""); + + return stringReversed; } /** From e93536bcd9d2d41e7d065e46618d586ab8940f20 Mon Sep 17 00:00:00 2001 From: Kayan Date: Mon, 22 Feb 2021 14:55:09 -0500 Subject: [PATCH 4/5] add code to longestWord(input) function --- Day01/Problem01.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/Day01/Problem01.js b/Day01/Problem01.js index 06c62a0..f3750ad 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -60,8 +60,21 @@ class Problem { */ longestWord(input) { // code goes here - return null; - } + //Ignore punctuation + let noPuncStr = input.replace(/[.,\/#!$%\^&\*;:{}=\-_`~()]/g,""); + let words = noPuncStr.split(" "); + + let longestWord = words[0]; + + for(let i = 1; i< words.length; i++ ){ + if(longestWord.length < words[i].length ){ + longestWord = words[i]; + } + + } + + return longestWord; + } /** * Have the swapCase(String input) take the input parameter and swap the case of each From ec158310bd1f670183635a190ad1a4d4fd160d4f Mon Sep 17 00:00:00 2001 From: Kayan Date: Mon, 22 Feb 2021 15:35:22 -0500 Subject: [PATCH 5/5] add code to swapCase(input) function --- Day01/Problem01.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Day01/Problem01.js b/Day01/Problem01.js index f3750ad..fd22d1e 100644 --- a/Day01/Problem01.js +++ b/Day01/Problem01.js @@ -83,7 +83,17 @@ class Problem { */ swapCase(str) { // code goes here - return null; + let letters = str.split(""); + + for(let i = 0; i