diff --git a/exercises/B-hello-world/exercise.js b/exercises/B-hello-world/exercise.js index b179ee953..eafaaf8b9 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. give me your positive energy I need it to complete this course!"); + +console.log(7); +console.log('I will make it'); \ No newline at end of file diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..f3369a672 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,6 @@ // Start by creating a variable `greeting` - +var greeting = "hi Im elahe" +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..52a92b5b2 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,4 @@ // Start by creating a variable `message` - +var message = "anyone can help me with terminal?" +var messagetype = typeof message; console.log(message); diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..5f0917989 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 greetingStart = "Hello, my name is "; +var name = "elahe"; +var message = greetingStart + name; console.log(message); diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..34b7c362a 100644 --- a/exercises/F-strings-methods/exercise.js +++ b/exercises/F-strings-methods/exercise.js @@ -1,3 +1,6 @@ // Start by creating a variable `message` +var name = "Elahe"; +var nameLength = name.length; -console.log(message); +console.log(nameLength); +console.log() \ No newline at end of file diff --git a/exercises/F-strings-methods/exercise2.js b/exercises/F-strings-methods/exercise2.js index b4b46943d..4f7fba06a 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,14 @@ -const name = " Daniel "; +var name = " Elahe"; +var nameLength = name.length; +console.log(nameLength); + +let newString = (`my name is ${name} which includes ${nameLength} characters`); +console.log(newString); + + +console.log(newString.trim()); +// why trim is not working here? + +console.log(name.trim()); + -console.log(message); diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..81934385c 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,4 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` +let numberOfStudents = 70; +let numberOfTeachers = 20; +console.log(numberOfStudents+numberOfTeachers); \ No newline at end of file diff --git a/exercises/I-floats/exercise.js b/exercises/I-floats/exercise.js index a5bbcd852..7af2d3dd8 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,14 @@ var numberOfStudents = 15; var numberOfMentors = 8; +var total = (numberOfStudents+numberOfMentors); +console.log(total); + +let x = (numberOfStudents/total*100); +console.log(x); + +let y = (numberOfMentors/total*100); +console.log(y); + +console.log(Math.round(x)); +console.log(Math.round(y)); + diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..f31b85e40 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,16 @@ function halve(number) { - // complete the function here + return number/2; } var result = halve(12); console.log(result); + +var result = halve(20); +console.log(result); + +var result = halve(87); +console.log(result); +console.log(Math.round(result)); + + diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..a57a8d69a 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..2ae706109 100644 --- a/exercises/K-functions-parameters/exercise.js +++ b/exercises/K-functions-parameters/exercise.js @@ -1,6 +1,7 @@ // Complete the function so that it takes input parameters -function multiply() { +function multiply(num1, num2) { // Calculate the result of the function and return it + return num1*num2; } // 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..f117d7bd1 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(num1, num2){ + return num1/num2; +} var result = divide(3, 4); diff --git a/exercises/K-functions-parameters/exercise3.js b/exercises/K-functions-parameters/exercise3.js index 537e9f4ec..e5bbfb303 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,5 +1,7 @@ // Write your function here - +function createGreeting(name){ + return name; +} var greeting = createGreeting("Daniel"); -console.log(greeting); +console.log(`hello my name is ${greeting}`); diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index 7ab44589e..bb5e8a8d6 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,7 @@ // Declare your function first // Call the function and assign to a variable `sum` - -console.log(sum); +function sum(num1, num2){ + return num1+num2; +} +console.log(sum(13, 124)); diff --git a/exercises/K-functions-parameters/exercise5.js b/exercises/K-functions-parameters/exercise5.js index 7c5bcd605..fd2858b95 100644 --- a/exercises/K-functions-parameters/exercise5.js +++ b/exercises/K-functions-parameters/exercise5.js @@ -1,4 +1,7 @@ // Declare your function here +function createLongGreeting(name, age){ + return (`i am ${name} and i am ${age} year old`) +} const greeting = createLongGreeting("Daniel", 30); diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index a5d377442..860547cfc 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -1,5 +1,18 @@ -var mentor1 = "Daniel"; -var mentor2 = "Irina"; -var mentor3 = "Mimi"; -var mentor4 = "Rob"; -var mentor5 = "Yohannes"; +function greeting(name){ + + return(`HELLO ${name}`); + +} +console.log(greeting("daniel").toUpperCase()); +console.log(greeting("irina").toUpperCase()); +console.log(greeting("mimi").toUpperCase()); +console.log(greeting("rob").toUpperCase()); +console.log(greeting("yohannes").toUpperCase()); + + + +let mentor1 = "Daniel"; +let mentor2 = "Irina"; +let mentor3 = "Mimi"; +let mentor4 = "Rob"; +let mentor5 = "Yohannes"; diff --git a/extra/1-currency-conversion.js b/extra/1-currency-conversion.js index 75b3c6aab..30012a094 100644 --- a/extra/1-currency-conversion.js +++ b/extra/1-currency-conversion.js @@ -5,7 +5,9 @@ Write a function that converts a price to USD (exchange rate is 1.4 $ to £) */ -function convertToUSD() {} +function convertToUSD(num) { + return num * 1.4 +} /* CURRENCY CONVERSION @@ -15,7 +17,10 @@ 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) { + return Number(((num * 0.99) * 5.7).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 b4f8c4c1b..b993541a9 100644 --- a/extra/2-piping.js +++ b/extra/2-piping.js @@ -16,26 +16,27 @@ the final result to the variable goodCode */ -function add() { - +function add(num1, num2) { + return num1 + num2; } -function multiply() { - +function multiply(num1, num2) { + return num1 * num2; } -function format() { - +function format(num) { + return `£${num}`; } const startingValue = 2; // Why can this code be seen as bad practice? Comment your answer. -let badCode = +let badCode = format(multiply(add(startingValue, 10), 2)); +// badcode as it's a bit complicated to read /* BETTER PRACTICE */ -let goodCode = +let goodCode = (format(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/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index a10cc9ac2..41fd2db11 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,18 +1,28 @@ // 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"; } + /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== diff --git a/mandatory/2-logic-error.js b/mandatory/2-logic-error.js index 9cca7603b..17f704886 100644 --- a/mandatory/2-logic-error.js +++ b/mandatory/2-logic-error.js @@ -1,18 +1,26 @@ // 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; + let result = a * b * c; + return result; } + + + /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== diff --git a/mandatory/3-function-output.js b/mandatory/3-function-output.js index 5a953ba60..c9724dd77 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -2,16 +2,21 @@ function getRandomNumber() { return Math.random() * 10; } +// MATH.RANDOM : to find a random number between 0 to 1. so tofind a number between 0 to 100 we need to multiple it to 100. // Add comments to explain what this function does. You're meant to use Google! function combine2Words(word1, word2) { return word1.concat(word2); -} +} +// CONCAT: to mix arrays together we can use concat. the other way is spread operator. 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..a7084c4d7 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -5,7 +5,10 @@ Sales tax is 20% of the price of the product. */ -function calculateSalesTax() {} +function calculateSalesTax(num) { + return num * 1.2; + +} /* CURRENCY FORMATTING @@ -17,7 +20,16 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} +function addTaxAndFormatCurrency(num) { + let final = ((num * 1.2).toFixed(2)).toString(); + return `£${final}`; + +} + + // function completed + + + /* =================================================== diff --git a/package.json b/package.json index 93e0861e3..9e7f2ffeb 100644 --- a/package.json +++ b/package.json @@ -14,15 +14,21 @@ "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" + ] } ] },