From 60b347adbd553cd4d904ea8cddb29300d38919dc Mon Sep 17 00:00:00 2001 From: DeagoBrowne <89912823+DeagoBrowne@users.noreply.github.com> Date: Sun, 12 Dec 2021 19:50:38 +0000 Subject: [PATCH 1/4] Completed exercises --- exercises/B-hello-world/README.md | 2 +- exercises/B-hello-world/exercise.js | 5 ++++- exercises/C-variables/exercise.js | 4 ++++ exercises/D-strings/exercise.js | 5 +++-- exercises/E-strings-concatenation/exercise.js | 4 +++- exercises/F-strings-methods/exercise.js | 4 +++- exercises/F-strings-methods/exercise2.js | 5 +++-- exercises/G-numbers/exercise.js | 7 +++++++ exercises/I-floats/exercise.js | 11 +++++++++++ exercises/J-functions/exercise.js | 4 ++-- exercises/J-functions/exercise2.js | 2 +- exercises/K-functions-parameters/exercise.js | 4 ++-- exercises/K-functions-parameters/exercise2.js | 4 +++- exercises/K-functions-parameters/exercise3.js | 4 ++++ exercises/K-functions-parameters/exercise4.js | 5 +++++ exercises/K-functions-parameters/exercise5.js | 5 +++++ exercises/L-functions-nested/exercise.js | 15 +++++++++++++++ 17 files changed, 76 insertions(+), 14 deletions(-) diff --git a/exercises/B-hello-world/README.md b/exercises/B-hello-world/README.md index 8c704fb43..6a6de448d 100644 --- a/exercises/B-hello-world/README.md +++ b/exercises/B-hello-world/README.md @@ -7,7 +7,7 @@ Inside of `exercise.js` there's a line of code that will print "Hello world!". ### 1. Run the program - Open a terminal window -- Change directory to this folder (`cd B-hello-world`) +- Change directory to this folder (`cd exercises/B-hello-world`) - Run the program using node (`node exercise.js`) ### 2. Experiment diff --git a/exercises/B-hello-world/exercise.js b/exercises/B-hello-world/exercise.js index b179ee953..ebf915139 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); + +console.log (7); + diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..06e46deee 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,7 @@ // Start by creating a variable `greeting` +var greeting = "Meow"; +console.log(greeting); console.log(greeting); + +console.log(greeting); \ No newline at end of file diff --git a/exercises/D-strings/exercise.js b/exercises/D-strings/exercise.js index 2cffa6a81..f2b1017ce 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,4 @@ // Start by creating a variable `message` - -console.log(message); +var message = "Meow"; +var messageType = typeof message; +console.log(messageType); diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..7ffb6c924 100644 --- a/exercises/E-strings-concatenation/exercise.js +++ b/exercises/E-strings-concatenation/exercise.js @@ -1,3 +1,5 @@ // Start by creating a variable `message` - +var start = "Hi, name's"; +var myName = "Deago"; +var message = start + myName; console.log(message); diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..6c9e9d6c2 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` +var myName = "Deago"; +var nameLength =`My name is Deago, and my name is ${myName.length} characters long`; -console.log(message); +console.log(nameLength); diff --git a/exercises/F-strings-methods/exercise2.js b/exercises/F-strings-methods/exercise2.js index b4b46943d..983521f92 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,4 @@ -const name = " Daniel "; - +const name = " Deago "; +nameLength = name.length +var message = `My name is ${name.trim()} and my name is ${name.trim().length} characters long` console.log(message); diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..4500d5a22 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,8 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` +let numberOfStudents = 15; +let numberOfMentors = 8; +let total = numberOfStudents + numberOfMentors; + +console.log(numberOfStudents) +console.log(numberOfMentors) +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..ce9fd3631 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,13 @@ var numberOfStudents = 15; var numberOfMentors = 8; + +var total = numberOfStudents + numberOfMentors; + +var perStu = (numberOfStudents / total) * 100; + +var perMen = (numberOfMentors / total) * 100; + +var perMenTo = Math.round(perMen)+"%"; +var perStuTo = Math.round(perStu)+"%"; + +console.log(perMenTo, perStuTo) diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..15923e52d 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,7 @@ function halve(number) { - // complete the function here + return number / 2 } -var result = halve(12); +var result = halve(512); console.log(result); diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..64ab834f9 100644 --- a/exercises/J-functions/exercise2.js +++ b/exercises/J-functions/exercise2.js @@ -1,5 +1,5 @@ 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..344556544 100644 --- a/exercises/K-functions-parameters/exercise.js +++ b/exercises/K-functions-parameters/exercise.js @@ -1,6 +1,6 @@ // Complete the function so that it takes input parameters -function multiply() { - // Calculate the result of the function and return it +function multiply( a, b) { + return a * b } // Assign the result of calling the function the variable `result` diff --git a/exercises/K-functions-parameters/exercise2.js b/exercises/K-functions-parameters/exercise2.js index db7a8904b..c1d90adb9 100644 --- a/exercises/K-functions-parameters/exercise2.js +++ b/exercises/K-functions-parameters/exercise2.js @@ -1,4 +1,6 @@ -// Declare your function first +function divide(a, b) { + return a / b; +} var result = divide(3, 4); diff --git a/exercises/K-functions-parameters/exercise3.js b/exercises/K-functions-parameters/exercise3.js index 537e9f4ec..0d642f1fb 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,4 +1,8 @@ // Write your function here +function createGreeting (a) { + return "Hello, my name is " + a +} + var greeting = createGreeting("Daniel"); diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index 7ab44589e..fb7a711ca 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,10 @@ // Declare your function first +function add(a, b) { + return a + b; +} // Call the function and assign to a variable `sum` +var 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..50133a377 100644 --- a/exercises/K-functions-parameters/exercise5.js +++ b/exercises/K-functions-parameters/exercise5.js @@ -1,5 +1,10 @@ // Declare your function here +function createLongGreeting(a, b) { + return "Hello, my name is " + a + " and I am " + + 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..45cdb3e02 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,3 +3,18 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; + +function names (b) { + return b.toUpperCase(); +} + +function message (b) { + var name = names(b); + return "HELLO " + name; +} + +console.log(message(mentor1)); +console.log(message(mentor2)); +console.log(message(mentor3)); +console.log(message(mentor4)); +console.log(message(mentor5)); \ No newline at end of file From a79c728d492c5c0456ba622502e12ddfa540e8cb Mon Sep 17 00:00:00 2001 From: DeagoBrowne <89912823+DeagoBrowne@users.noreply.github.com> Date: Wed, 15 Dec 2021 03:25:19 +0000 Subject: [PATCH 2/4] Finished all main exercises --- mandatory/1-syntax-errors.js | 13 ++++++++----- mandatory/2-logic-error.js | 12 +++++++----- mandatory/3-function-output.js | 4 ++++ mandatory/4-tax.js | 6 +++++- package.json | 14 ++++++++++---- 5 files changed, 34 insertions(+), 15 deletions(-) diff --git a/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index a10cc9ac2..9aeb08d7a 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,16 +1,19 @@ // 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"; +var name = "Sonjide"; + +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..2b0c15390 100644 --- a/mandatory/2-logic-error.js +++ b/mandatory/2-logic-error.js @@ -1,16 +1,18 @@ // 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(); +var sentence = "A wild sentence appeared!"; +var word = "Turtles"; + +function getStringLength(word, sentence) { + return (sentence, 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..d1be40d9e 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -1,14 +1,18 @@ // Add comments to explain what this function does. You're meant to use Google! function getRandomNumber() { return Math.random() * 10; + // returns a random number between 1 <1, then multiplies that number by 10 } // Add comments to explain what this function does. You're meant to use Google! function combine2Words(word1, word2) { return word1.concat(word2); + // creates a new array consisting of all elements within the object } function concatenate(firstWord, secondWord, thirdWord) { + + return 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. } diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index ba77c7ae2..287be42d1 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -17,7 +17,11 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} +var b = "£" + +function addTaxAndFormatCurrency(x) { + return (x + 0.20*x).toFixed(2); +} /* =================================================== diff --git a/package.json b/package.json index 93e0861e3..ff48de45a 100644 --- a/package.json +++ b/package.json @@ -14,21 +14,27 @@ "url": "https://github.com/CodeYourFuture/JavaScript-Core-1-Coursework-Week1/issues" }, "jest": { - "setupFilesAfterEnv": ["jest-extended"], + "setupFilesAfterEnv": [ + "jest-extended" + ], "projects": [ { "displayName": "mandatory", - "testMatch": ["/mandatory/*.js"] + "testMatch": [ + "/mandatory/*.js" + ] }, { "displayName": "extra", - "testMatch": ["/extra/*.js"] + "testMatch": [ + "/extra/*.js" + ] } ] }, "homepage": "https://github.com/CodeYourFuture/JavaScript-Core-1-Coursework-Week1#readme", "devDependencies": { "jest": "^26.6.3", - "jest-extended": "^0.11.5" + "jest-extended": "^1.2.0" } } From a83ddd6dc9559cf7407a312575ec820ebe406959 Mon Sep 17 00:00:00 2001 From: DeagoBrowne <89912823+DeagoBrowne@users.noreply.github.com> Date: Wed, 15 Dec 2021 19:40:18 +0000 Subject: [PATCH 3/4] Can't get the pound sign to work - done. --- 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 287be42d1..fb1313601 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -17,12 +17,12 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -var b = "£" + + function addTaxAndFormatCurrency(x) { return (x + 0.20*x).toFixed(2); } - /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== From 55371456c724759520f42e8de50ad4e76d053892 Mon Sep 17 00:00:00 2001 From: DeagoBrowne <89912823+DeagoBrowne@users.noreply.github.com> Date: Thu, 17 Mar 2022 01:35:02 +0000 Subject: [PATCH 4/4] made an attempt at the extras folder --- extra/1-currency-conversion.js | 17 ++++++++++++++--- extra/2-piping.js | 18 +++++++++--------- extra/3-magic-8-ball.js | 4 +++- test.js | 22 ++++++++++++++++++++++ 4 files changed, 48 insertions(+), 13 deletions(-) create mode 100644 test.js diff --git a/extra/1-currency-conversion.js b/extra/1-currency-conversion.js index d82e59480..ad289e3fd 100644 --- a/extra/1-currency-conversion.js +++ b/extra/1-currency-conversion.js @@ -5,7 +5,12 @@ Write a function that converts a price to USD (exchange rate is 1.4 $ to £) */ -function convertToUSD() {} +function convertToUSD(num) { + let usd = 1.4 + let result; + result = usd * num; + return result; +} /* CURRENCY CONVERSION @@ -15,8 +20,14 @@ function convertToUSD() {} They have also decided that they should add a 1% fee to all foreign transactions, which means you only convert 99% of the £ to BRL. */ -function convertToBRL() {} - +function convertToBRL(num) { + let brl = 5.7; + let result; + let fee; + fee = (1/100) * num; + result = (num - fee) * brl; + return result.toFixed(2); +} /* ======= TESTS - DO NOT MODIFY ===== There are some Tests in this file that will help you work out if your code is working. diff --git a/extra/2-piping.js b/extra/2-piping.js index 9c8ebc76a..d4f016665 100644 --- a/extra/2-piping.js +++ b/extra/2-piping.js @@ -16,26 +16,26 @@ the final result to the variable goodCode */ -function add() { - +function add(a, b) { + return a + b; } -function multiply() { - +function multiply(a, b) { + return a * b; } -function format() { - +function format(num) { + return '£' + num; } const startingValue = 2; -// Why can this code be seen as bad practice? Comment your answer. -let badCode = +// Why can this code be seen as bad practice? Comment your answer. It isn't clear what is doing what. +let badCode = ((startingValue, 10) * 2); /* BETTER PRACTICE */ -let goodCode = +let goodCode = format(multiply(add(startingValue, 10), 2)); /* ======= TESTS - DO NOT MODIFY ===== There are some Tests in this file that will help you work out if your code is working. diff --git a/extra/3-magic-8-ball.js b/extra/3-magic-8-ball.js index f3adbefa5..b509be809 100644 --- a/extra/3-magic-8-ball.js +++ b/extra/3-magic-8-ball.js @@ -46,6 +46,7 @@ // This should log "The ball has shaken!" // and return the answer. function shakeBall() { + return 'The ball has shaken!'; //Write your code in here } @@ -59,6 +60,7 @@ function shakeBall() { This function should expect to be called with any value which was returned by the shakeBall function. */ function checkAnswer(answer) { + //Write your code in here } @@ -89,7 +91,7 @@ test("whole magic 8 ball sequence", () => { "very negative", ]); }); - + format(multiply(add(startingValue, 10), 2)); test("magic 8 ball returns different values each time", () => { const seenAnswers = new Set(); for (let i = 0; i < 10; ++i) { diff --git a/test.js b/test.js new file mode 100644 index 000000000..4ce563768 --- /dev/null +++ b/test.js @@ -0,0 +1,22 @@ +// let num = 30; + +// let fee; + +// fee = (1/100) * num; + +// let total; + +// total = num - fee; + +// console.log(total); + +function convertToBRL(num) { + let brl = 5.7; + let result; + let fee; + fee = (1/100) * num; + result = (num - fee) * brl; + return result.toFixed(2); +} + +console.log(convertToBRL(30)); \ No newline at end of file