diff --git a/exercises/B-hello-world/exercise.js b/exercises/B-hello-world/exercise.js index b179ee953..dfbf46c18 100644 --- a/exercises/B-hello-world/exercise.js +++ b/exercises/B-hello-world/exercise.js @@ -1 +1,3 @@ -console.log("Hello world"); +console.log("Hello world, I started learning Javascript"); +console.log("Jello world"); +console.log(10); diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..ef7e25bb9 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,6 @@ // Start by creating a variable `greeting` +const 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..e677c1e43 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,17 @@ // Start by creating a variable `message` +// const message = "this is a string." +//const messageType = typeof message + + +const message = "this is a string."; +const messageType = typeof message; console.log(message); +console.log(messageType); + + +const message1 = 56; +const messageType1 = typeof message1; + +console.log(message1); +console.log(messageType1); diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..9d1bb6a99 100644 --- a/exercises/E-strings-concatenation/exercise.js +++ b/exercises/E-strings-concatenation/exercise.js @@ -1,3 +1,7 @@ // Start by creating a variable `message` +const greetingStart = "Hello, my name is "; +const myName = "Zaw Khing."; -console.log(message); +const greeting = greetingStart + myName ; + +console.log(greeting); diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..847d3e27f 100644 --- a/exercises/F-strings-methods/exercise.js +++ b/exercises/F-strings-methods/exercise.js @@ -1,3 +1,8 @@ -// Start by creating a variable `message` +const name = "Zaw Khing" +const nameLength = name.length;// Start by creating a variable `message` + +//const myName = "My name is " + name + " and my name is " + nameLength + " characters long."; +//console.log (myName); + +console.log("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..81a3a79b8 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,8 @@ -const name = " Daniel "; +//const name = " Daniel "; +const name = " Zaw Myo Khing "; +const nameTrimMethod = name.trim(); +const nameLength = name.length; -console.log(message); +const myName = `My name is ${nameTrimMethod} and my name is ${nameLength} characters long.` + +console.log(myName); diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..37a6ac6fe 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,11 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` + +const numberOfStudents = 50; +const numberOfMentors = 10; + +const totalPeople = numberOfStudents + numberOfMentors; + +console.log("Number of students: " + numberOfStudents); +console.log("Number of mentors: " + numberOfMentors); +console.log("Total number of students and mentors: " + totalPeople); + diff --git a/exercises/I-floats/exercise.js b/exercises/I-floats/exercise.js index a5bbcd852..fb7aa7aec 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,14 @@ var numberOfStudents = 15; var numberOfMentors = 8; +var sum = numberOfStudents + numberOfMentors; + +var percentageStudents = (numberOfStudents / sum) * 100; +var students = Math.round(percentageStudents); + +var percentageMentors = (numberOfMentors / sum) * 100; +var mentors = Math.round(percentageMentors); + + +console.log(`Percentage students: ${students}%`); +console.log(`Percentage mentors: ${mentors}%`); + diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..7fc58d969 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,12 @@ function halve(number) { // complete the function here + return number / 2; } var result = halve(12); +var result1 = halve(23); +var result2 = halve(56); console.log(result); +console.log(result1); +console.log(result2); diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..c80aed200 100644 --- a/exercises/J-functions/exercise2.js +++ b/exercises/J-functions/exercise2.js @@ -1,7 +1,12 @@ function triple(number) { // complete function here + return number * 3; } var result = triple(12); +var result1 = triple(1234); +var result2 = triple(0.2); console.log(result); +console.log(result1); +console.log(result2); diff --git a/exercises/K-functions-parameters/exercise.js b/exercises/K-functions-parameters/exercise.js index 8d5db5e69..24789172a 100644 --- a/exercises/K-functions-parameters/exercise.js +++ b/exercises/K-functions-parameters/exercise.js @@ -1,9 +1,9 @@ // Complete the function so that it takes input parameters -function multiply() { - // Calculate the result of the function and return it +function multiply(num1, num2) { + return num1 * num2; // Calculate the result of the function and return it } // Assign the result of calling the function the variable `result` -var result = multiply(3, 4); +const result = multiply(3, 4); console.log(result); diff --git a/exercises/K-functions-parameters/exercise2.js b/exercises/K-functions-parameters/exercise2.js index db7a8904b..91ddf23d8 100644 --- a/exercises/K-functions-parameters/exercise2.js +++ b/exercises/K-functions-parameters/exercise2.js @@ -1,5 +1,9 @@ // Declare your function first +function divide(num1, num2){ + return num1 / num2; + +} -var result = divide(3, 4); +const 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..ff7d1f7cc 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,5 +1,9 @@ // Write your function here - +function createGreeting(name){ + + return "Hello, My name is " + 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..4414cba8f 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,11 @@ // Declare your function first - +function addTwoNumbers(num1, num2){ + //sum = num1 + num2; + return num1 + num2; +} // Call the function and assign to a variable `sum` + var sum = addTwoNumbers(13,124); + //var sum = addTwoNumbers(15,1234); console.log(sum); +//console.log((addTwoNumbers)(132,124)); diff --git a/exercises/K-functions-parameters/exercise5.js b/exercises/K-functions-parameters/exercise5.js index 7c5bcd605..28922d139 100644 --- a/exercises/K-functions-parameters/exercise5.js +++ b/exercises/K-functions-parameters/exercise5.js @@ -1,5 +1,11 @@ // Declare your function here +function createGreeting(name, age){ -const greeting = createLongGreeting("Daniel", 30); + return `Hello, My name is ${name} and I'm ${age} years old`; +} +const greeting = createGreeting("Daniel", 30); +//createLongGreeting(); + +//(createLongGreeting)(`Hello, My name is ${greeting} and I'm ${greeting} years old`)); console.log(greeting); diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index a5d377442..6a336bb22 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,3 +3,20 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; + + +function getUpperCase(name){ + return name.toUpperCase(); +} + +function greeting(name){ + nameInUpperCase = getUpperCase(name); + const message = "Hello " + nameInUpperCase; + return message; +} + +console.log(greeting(mentor1)); +console.log(greeting(mentor2)); +console.log(greeting(mentor3)); +console.log(greeting(mentor4)); +console.log(greeting(mentor5)); \ No newline at end of file diff --git a/extra/1-currency-conversion.js b/extra/1-currency-conversion.js index 75b3c6aab..d582f4a57 100644 --- a/extra/1-currency-conversion.js +++ b/extra/1-currency-conversion.js @@ -5,7 +5,15 @@ Write a function that converts a price to USD (exchange rate is 1.4 $ to £) */ -function convertToUSD() {} +function convertToUSD(currency) { + return currency * 1.4; +} + +const usDollar = convertToUSD(100); + +console.log(usDollar); + + /* CURRENCY CONVERSION @@ -15,7 +23,15 @@ 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(currency) { + const convertIncludingFees = currency * 5.7 * 0.99; + currencyInTwoDecimal = Number(convertIncludingFees.toFixed(2)); + return currencyInTwoDecimal; + +} +//const brazillianDollar = convertToBRL(100); + +console.log(convertToBRL(100)); /* ======= TESTS - DO NOT MODIFY ===== There are some Tests in this file that will help you work out if your code is working. @@ -39,3 +55,4 @@ test("convertToBRL function works for £30", () => { test("convertToBRL function works for £1.50", () => { expect(convertToBRL(1.5)).toEqual(8.46); }); + diff --git a/extra/2-piping.js b/extra/2-piping.js index b4f8c4c1b..c1589e264 100644 --- a/extra/2-piping.js +++ b/extra/2-piping.js @@ -16,26 +16,29 @@ the final result to the variable goodCode */ -function add() { - +function add(num1, num2) { + return result = num1 + num2;; } -function multiply() { - +function multiply(num1, num2) { + return result = num1 * num2; } -function format() { - +function format(num1) { + return result = "£" + num1; } 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)); + /* BETTER PRACTICE */ -let goodCode = +let goodCode = add(startingValue,10); +goodCode = multiply(goodCode, 2); +goodCode = format(goodCode); /* ======= 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..178b9c928 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,16 +1,17 @@ // 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"; + return `Hello, my name is ${name} and I am ${age} years old`; +} function getTotal(a, b) { - total = a ++ b; - - return "The total is total"; + const total = a + b; + return "The total is " + total; } /* diff --git a/mandatory/2-logic-error.js b/mandatory/2-logic-error.js index 9cca7603b..fddf6fdfb 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(); + wordtrim = word.trim(); + return wordtrim; } function getStringLength(word) { - return "word".length(); + wordLength = word.length; + return wordLength; } function multiply(a, b, c) { - a * b * c; - return; + var sum = a * b * c; + return sum; } /* diff --git a/mandatory/3-function-output.js b/mandatory/3-function-output.js index 5a953ba60..dd5b7f1b5 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -1,18 +1,21 @@ // Add comments to explain what this function does. You're meant to use Google! -function getRandomNumber() { - return Math.random() * 10; +function getRandomNumber() { //create function called getRandomNumber + return Math.random() * 10; //returns a random number between 0 and 9 } // Add comments to explain what this function does. You're meant to use Google! -function combine2Words(word1, word2) { - return word1.concat(word2); +function combine2Words(word1, word2) { //create function called combine2Words with 2 parameters + return word1.concat(word2); //returns concat() method joins two strings. } 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.concat(" ", secondWord, " ", thirdWord); } - +console.log(concatenate("code","your","future")); +console.log(concatenate("I","like","icecream")); +console.log(concatenate("I","am",19)); /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index ba77c7ae2..6c46dbfbf 100644 --- a/mandatory/4-tax.js +++ b/mandatory/4-tax.js @@ -5,7 +5,13 @@ Sales tax is 20% of the price of the product. */ -function calculateSalesTax() {} +function calculateSalesTax(productPrice) { + const salesTax = (productPrice / 100) * 20; + const totalPrice = productPrice + salesTax; + return totalPrice; +} + +console.log(calculateSalesTax(123)); /* CURRENCY FORMATTING @@ -17,7 +23,15 @@ function calculateSalesTax() {} Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} +function addTaxAndFormatCurrency(productPrice) { + const addTax = calculateSalesTax(productPrice); + const formatCurrency = addTax.toFixed(2); + return "£" + formatCurrency; +} + +console.log(addTaxAndFormatCurrency(456)); + + /* =================================================== 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" + ] } ] },