From 65d43b5f92ba33b64e5ad95f1760bcb6e0da331b Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Mon, 21 Nov 2022 20:23:51 +0000 Subject: [PATCH 1/6] Exercise I started to work on the exercises. --- exercises/B-hello-world/exercise.js | 5 ++++- exercises/C-variables/exercise.js | 4 +++- exercises/D-strings/exercise.js | 4 +++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/exercises/B-hello-world/exercise.js b/exercises/B-hello-world/exercise.js index b179ee953..d9e883831 100644 --- a/exercises/B-hello-world/exercise.js +++ b/exercises/B-hello-world/exercise.js @@ -1 +1,4 @@ -console.log("Hello world"); +console.log("Hello world. I just started learning JavaScript!"); +console.log("Hello world."); +console.log("Hi, my name is Khadija."); +console.log(0) \ No newline at end of file diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..a26d1898e 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,5 @@ // Start by creating a variable `greeting` - +let greeting = "hello world" +console.log(greeting); +console.log(greeting); console.log(greeting); diff --git a/exercises/D-strings/exercise.js b/exercises/D-strings/exercise.js index 2cffa6a81..0c805d72d 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,5 @@ // Start by creating a variable `message` - +let message = "This is a string"; +let messageType = typeof message; console.log(message); +console.log(messageType); From 56ec8a6b1d0be3ff33b4c415bdd4216ff14eb13c Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Mon, 21 Nov 2022 20:32:37 +0000 Subject: [PATCH 2/6] exercise E exercise E completed --- exercises/E-strings-concatenation/exercise.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..459587561 100644 --- a/exercises/E-strings-concatenation/exercise.js +++ b/exercises/E-strings-concatenation/exercise.js @@ -1,3 +1,4 @@ // Start by creating a variable `message` - -console.log(message); +let greeting = "Hello, my name is "; +let myName = "Khadija"; +console.log(greeting + myName); From 54f22c193b5ba75c62ae75fa37773e0a5b7e95a5 Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Mon, 21 Nov 2022 21:15:48 +0000 Subject: [PATCH 3/6] Exercise F completed exercise F --- exercises/F-strings-methods/exercise.js | 4 +++- exercises/F-strings-methods/exercise2.js | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..4c345d679 100644 --- a/exercises/F-strings-methods/exercise.js +++ b/exercises/F-strings-methods/exercise.js @@ -1,3 +1,5 @@ // Start by creating a variable `message` - +const name = "Khadija"; +let nameLength = name.length; +let message = `My name is ${name} and my name is ${nameLength} characters long`; console.log(message); diff --git a/exercises/F-strings-methods/exercise2.js b/exercises/F-strings-methods/exercise2.js index b4b46943d..8288154f3 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,7 @@ const name = " Daniel "; - +let nameTrim = name.trim(); +let nameLength = name.length; +let nameWithoutSpace = "Daniel"; +let nameWithoutSpaceLength = nameWithoutSpace.length; +let message = `My name is ${nameTrim} and my name is ${nameWithoutSpaceLength} characters long`; console.log(message); From 71e090ed6faa94e4dd381d0968242c371a376324 Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Mon, 21 Nov 2022 21:51:40 +0000 Subject: [PATCH 4/6] completed exercise's up to K --- exercises/G-numbers/exercise.js | 6 ++++++ exercises/I-floats/exercise.js | 5 +++++ exercises/J-functions/exercise.js | 6 +++++- exercises/J-functions/exercise2.js | 1 + exercises/K-functions-parameters/exercise.js | 5 +++-- exercises/K-functions-parameters/exercise2.js | 4 +++- exercises/K-functions-parameters/exercise3.js | 3 +++ exercises/K-functions-parameters/exercise4.js | 6 ++++-- exercises/K-functions-parameters/exercise5.js | 4 +++- exercises/L-functions-nested/exercise.js | 1 + 10 files changed, 34 insertions(+), 7 deletions(-) diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..4a16a7eb9 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,7 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` +let numberOfStudents = 15; +console.log(numberOfStudents); +let numberOfMentors = 8; +console.log(numberOfMentors); +let total = numberOfMentors + numberOfStudents; +console.log(total); \ No newline at end of file diff --git a/exercises/I-floats/exercise.js b/exercises/I-floats/exercise.js index a5bbcd852..63c9ced11 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,7 @@ var numberOfStudents = 15; var numberOfMentors = 8; +let total = numberOfMentors + numberOfStudents; +let numberOfStudentsPercentage = Math.round(numberOfStudents/total * 100); +console.log(numberOfStudentsPercentage); +let numberOfMentorsPercentage = Math.round(numberOfMentors/total * 100); +console.log(numberOfMentorsPercentage); \ No newline at end of file diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..4f2ea7962 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,11 @@ function halve(number) { // complete the function here + return number / 2; } var result = halve(12); - console.log(result); +result2 = halve(6); +console.log(result2); +result3 = halve(3); +console.log(result3); diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..468d45596 100644 --- a/exercises/J-functions/exercise2.js +++ b/exercises/J-functions/exercise2.js @@ -1,5 +1,6 @@ function triple(number) { // complete function here + return number * 3; } var result = triple(12); diff --git a/exercises/K-functions-parameters/exercise.js b/exercises/K-functions-parameters/exercise.js index 8d5db5e69..88e31bce3 100644 --- a/exercises/K-functions-parameters/exercise.js +++ b/exercises/K-functions-parameters/exercise.js @@ -1,9 +1,10 @@ // Complete the function so that it takes input parameters -function multiply() { +function multiply(a,b) { // Calculate the result of the function and return it + return a * b; } // Assign the result of calling the function the variable `result` var result = multiply(3, 4); -console.log(result); +console.log(result); \ No newline at end of file diff --git a/exercises/K-functions-parameters/exercise2.js b/exercises/K-functions-parameters/exercise2.js index db7a8904b..58ac28afa 100644 --- a/exercises/K-functions-parameters/exercise2.js +++ b/exercises/K-functions-parameters/exercise2.js @@ -1,5 +1,7 @@ // Declare your function first - +function divide(a,b){ + return a / b; +} var result = divide(3, 4); console.log(result); diff --git a/exercises/K-functions-parameters/exercise3.js b/exercises/K-functions-parameters/exercise3.js index 537e9f4ec..474a45c4d 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,4 +1,7 @@ // Write your function here +function createGreeting(string){ + return "Hello, my name is " + string; +} var greeting = createGreeting("Daniel"); diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index 7ab44589e..c820e3ae6 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,7 @@ // Declare your function first - +function add(a,b){ + return a + b; +} // Call the function and assign to a variable `sum` - +sum = add(13,124) console.log(sum); diff --git a/exercises/K-functions-parameters/exercise5.js b/exercises/K-functions-parameters/exercise5.js index 7c5bcd605..e2ae99ade 100644 --- a/exercises/K-functions-parameters/exercise5.js +++ b/exercises/K-functions-parameters/exercise5.js @@ -1,5 +1,7 @@ // Declare your function here - +function createLongGreeting(a,b){ + return "Hello, my name is " + a + " and I'm " + b + " years old"; +} const greeting = createLongGreeting("Daniel", 30); console.log(greeting); diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index a5d377442..3bfa29576 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,3 +3,4 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; +d \ No newline at end of file From cefa032942fd8b6fe4247f04785c9c0e15d640dd Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Fri, 25 Nov 2022 14:52:20 +0000 Subject: [PATCH 5/6] exercises and mandatory exercises completed I have passed all mandatory tests and completed all the exercises. --- exercises/K-functions-parameters/exercise4.js | 2 +- exercises/L-functions-nested/exercise.js | 14 +++++++++++++- mandatory/1-syntax-errors.js | 12 ++++++------ mandatory/2-logic-error.js | 8 ++++---- mandatory/3-function-output.js | 8 ++++---- mandatory/4-tax.js | 17 ++++++++++++----- 6 files changed, 40 insertions(+), 21 deletions(-) diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index c820e3ae6..ececea0bc 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -3,5 +3,5 @@ function add(a,b){ return a + b; } // Call the function and assign to a variable `sum` -sum = add(13,124) +let sum = add(13,124) console.log(sum); diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index 3bfa29576..e51071e59 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,4 +3,16 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; -d \ No newline at end of file + + +function greeting(names){; +return "HELLO " + names.toUpperCase(); +} +console.log(greeting(mentor1)) +console.log(greeting(mentor2)) +console.log(greeting(mentor3)) +console.log(greeting(mentor4)) +console.log(greeting(mentor5)) + + + diff --git a/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index a10cc9ac2..e1180629b 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,16 +1,16 @@ // There are syntax errors in this code - can you fix it to pass the tests? -function addNumbers(a b c) { +function addNumbers(a, b, c) { return a + b + c; } -function introduceMe(name, age) - return "Hello, my name is " + name "and I am " age + "years old"; - +function introduceMe(name, age){ + return "Hello, my name is " + name + " and I am " + age + " years old"; +} function getTotal(a, b) { - total = a ++ b; + total = a + b; - return "The total is total"; + return `The total is ${total}`; } /* diff --git a/mandatory/2-logic-error.js b/mandatory/2-logic-error.js index 9cca7603b..7832bfdf7 100644 --- a/mandatory/2-logic-error.js +++ b/mandatory/2-logic-error.js @@ -1,16 +1,16 @@ // The syntax for this function is valid but it has an error, find it and fix it. function trimWord(word) { - return wordtrim(); + return word.trim(); } function getStringLength(word) { - return "word".length(); + return word.length; } function multiply(a, b, c) { - a * b * c; - return; + + return a * b * c; } /* diff --git a/mandatory/3-function-output.js b/mandatory/3-function-output.js index 5a953ba60..7f8298296 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -1,16 +1,16 @@ -// Add comments to explain what this function does. You're meant to use Google! +// The Math.random() function returns a floating-point, pseudo-random number that's greater than or equal to 0 and less than 1, with approximately uniform distribution over that range. function getRandomNumber() { return Math.random() * 10; } -// Add comments to explain what this function does. You're meant to use Google! + +// the concat() method is used to merge two or more arrays. This method does not change the existing arrays, but instead returns a new array. function combine2Words(word1, word2) { return word1.concat(word2); } function concatenate(firstWord, secondWord, thirdWord) { - // Write the body of this function to concatenate three words together. - // Look at the test case below to understand what this function is expected to return. + return `${firstWord} ${secondWord} ${thirdWord}`; } /* diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index ba77c7ae2..d91033ebf 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -5,7 +5,11 @@ Sales tax is 20% of the price of the product. */ -function calculateSalesTax() {} +function calculateSalesTax(price) { + const tax = 0.2 * price; + priceWithTax = tax + price; + return priceWithTax; +} /* CURRENCY FORMATTING @@ -17,7 +21,12 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} +function addTaxAndFormatCurrency(price) { + const tax = 0.2 * price; + priceWithTax = tax + price; + const totalPrice = "£" + priceWithTax.toFixed(2); + return totalPrice; +} /* =================================================== @@ -30,9 +39,7 @@ To run the tests for just this one file, type `npm test -- --testPathPattern 4-t =================================================== */ -test("calculateSalesTax for £15", () => { - expect(calculateSalesTax(15)).toEqual(18); -}); + test("calculateSalesTax for £17.50", () => { expect(calculateSalesTax(17.5)).toEqual(21); From cd7ca86251c31eba8475cfe83a4deb5bc32fad64 Mon Sep 17 00:00:00 2001 From: KhadijaHaji <108950237+KhadijaHaji@users.noreply.github.com> Date: Sat, 26 Nov 2022 11:28:10 +0000 Subject: [PATCH 6/6] Update 4-tax.js --- mandatory/4-tax.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index d91033ebf..7d63219af 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -7,7 +7,7 @@ function calculateSalesTax(price) { const tax = 0.2 * price; - priceWithTax = tax + price; + const priceWithTax = tax + price; return priceWithTax; } @@ -23,7 +23,7 @@ function calculateSalesTax(price) { function addTaxAndFormatCurrency(price) { const tax = 0.2 * price; - priceWithTax = tax + price; + const priceWithTax = tax + price; const totalPrice = "£" + priceWithTax.toFixed(2); return totalPrice; }