From 5c825adee5642a9fbd10a866bca81b4faa651075 Mon Sep 17 00:00:00 2001 From: clav00cl <105980474+clav00cl@users.noreply.github.com> Date: Sat, 27 Aug 2022 18:03:09 +0100 Subject: [PATCH] jschallenge --- exercises/C-variables/exercise.js | 4 ++-- exercises/D-strings/exercise.js | 4 ++-- exercises/E-strings-concatenation/exercise.js | 5 +++-- exercises/F-strings-methods/exercise.js | 4 +++- exercises/F-strings-methods/exercise2.js | 7 ++++--- exercises/G-numbers/exercise.js | 4 ++++ exercises/I-floats/exercise.js | 5 ++++- exercises/J-functions/exercise.js | 3 ++- exercises/J-functions/exercise2.js | 3 ++- exercises/K-functions-parameters/exercise.js | 17 +++++++++-------- exercises/K-functions-parameters/exercise2.js | 5 ++++- exercises/K-functions-parameters/exercise3.js | 10 ++++++---- exercises/K-functions-parameters/exercise4.js | 8 ++++++-- exercises/K-functions-parameters/exercise5.js | 8 +++++--- exercises/L-functions-nested/exercise.js | 14 ++++++++++++++ mandatory/1-syntax-errors.js | 17 +++++++---------- mandatory/2-logic-error.js | 12 +++++------- mandatory/3-function-output.js | 6 +++--- mandatory/4-tax.js | 16 ++++++++++------ 19 files changed, 95 insertions(+), 57 deletions(-) diff --git a/exercises/C-variables/exercise.js b/exercises/C-variables/exercise.js index a6bbb9786..36e070f73 100644 --- a/exercises/C-variables/exercise.js +++ b/exercises/C-variables/exercise.js @@ -1,3 +1,3 @@ -// Start by creating a variable `greeting` +var greeting = "Hello world"; -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..8ab6c8ea1 100644 --- a/exercises/D-strings/exercise.js +++ b/exercises/D-strings/exercise.js @@ -1,3 +1,3 @@ // Start by creating a variable `message` - -console.log(message); +const message="it is a string" +console.log(message,typeof(message)); \ No newline at end of file diff --git a/exercises/E-strings-concatenation/exercise.js b/exercises/E-strings-concatenation/exercise.js index 2cffa6a81..bf0769986 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); +const name1="Bahareh" +const message="hello i am a " +console.log(message+ name1); \ No newline at end of file diff --git a/exercises/F-strings-methods/exercise.js b/exercises/F-strings-methods/exercise.js index 2cffa6a81..8a0db3592 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 name1= "bahareh"; +var nameLength = name1.length; -console.log(message); +console.log(nameLength) \ No newline at end of file diff --git a/exercises/F-strings-methods/exercise2.js b/exercises/F-strings-methods/exercise2.js index b4b46943d..216c3ab04 100644 --- a/exercises/F-strings-methods/exercise2.js +++ b/exercises/F-strings-methods/exercise2.js @@ -1,3 +1,4 @@ -const name = " Daniel "; - -console.log(message); +const name1 = " Daniel "; +const message= "hello i am a "; +var nameLength = name1.length; +console.log("my name is" +" "+ name1.trim() + " and my name is "+ nameLength + "character."); \ No newline at end of file diff --git a/exercises/G-numbers/exercise.js b/exercises/G-numbers/exercise.js index 49e7bc00b..ec03e60d0 100644 --- a/exercises/G-numbers/exercise.js +++ b/exercises/G-numbers/exercise.js @@ -1 +1,5 @@ // Start by creating a variables `numberOfStudents` and `numberOfMentors` +const numberOfStudents=40; +const numberOfMentors = 8; + +console.log(numberOfMentors + numberOfStudents); \ No newline at end of file diff --git a/exercises/I-floats/exercise.js b/exercises/I-floats/exercise.js index a5bbcd852..8ab72b9e2 100644 --- a/exercises/I-floats/exercise.js +++ b/exercises/I-floats/exercise.js @@ -1,2 +1,5 @@ -var numberOfStudents = 15; +const numberOfStudents = 15; var numberOfMentors = 8; +var preciseNum=(numberOfMentors / numberOfStudents) *100; +var roughNum = Math.round(preciseNum); +console.log(roughNum , preciseNum); \ No newline at end of file diff --git a/exercises/J-functions/exercise.js b/exercises/J-functions/exercise.js index 0ae5850e5..eb2eedf88 100644 --- a/exercises/J-functions/exercise.js +++ b/exercises/J-functions/exercise.js @@ -1,7 +1,8 @@ function halve(number) { // complete the function here + return number /2; } var result = halve(12); -console.log(result); +console.log(result); \ No newline at end of file diff --git a/exercises/J-functions/exercise2.js b/exercises/J-functions/exercise2.js index 82ef5e780..a38d87d69 100644 --- a/exercises/J-functions/exercise2.js +++ b/exercises/J-functions/exercise2.js @@ -1,7 +1,8 @@ function triple(number) { // complete function here + return number * 3; } var result = triple(12); -console.log(result); +console.log(result); \ No newline at end of file diff --git a/exercises/K-functions-parameters/exercise.js b/exercises/K-functions-parameters/exercise.js index 8d5db5e69..49aaf3f4f 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() { - // Calculate the result of the function and return it -} - -// Assign the result of calling the function the variable `result` -var result = multiply(3, 4); - -console.log(result); +function multiply(a , b) { + return a*b; + // Calculate the result of the function and return it + } + + // Assign the result of calling the function the variable `result` + var result = multiply(3, 4); + + 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..fab001cf6 100644 --- a/exercises/K-functions-parameters/exercise2.js +++ b/exercises/K-functions-parameters/exercise2.js @@ -1,5 +1,8 @@ // Declare your function first +function divide(a , b) { + return a/b; +} var result = divide(3, 4); -console.log(result); +console.log(result); \ No newline at end of file diff --git a/exercises/K-functions-parameters/exercise3.js b/exercises/K-functions-parameters/exercise3.js index 537e9f4ec..e7b42a8e8 100644 --- a/exercises/K-functions-parameters/exercise3.js +++ b/exercises/K-functions-parameters/exercise3.js @@ -1,5 +1,7 @@ // Write your function here - -var greeting = createGreeting("Daniel"); - -console.log(greeting); +function createGreeting(name){ + return "hello i am a " + name; + } + var greeting = createGreeting("Daniel"); + + console.log(greeting); \ No newline at end of file diff --git a/exercises/K-functions-parameters/exercise4.js b/exercises/K-functions-parameters/exercise4.js index 7ab44589e..80e1a1383 100644 --- a/exercises/K-functions-parameters/exercise4.js +++ b/exercises/K-functions-parameters/exercise4.js @@ -1,5 +1,9 @@ // Declare your function first // Call the function and assign to a variable `sum` - -console.log(sum); +function addNumbers(a , b){ + return a + b; + } + const sum=addNumbers(13 ,124) + + console.log(sum); \ No newline at end of file diff --git a/exercises/K-functions-parameters/exercise5.js b/exercises/K-functions-parameters/exercise5.js index 7c5bcd605..0f98c9ff2 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(name , number){ + return "My name is " + name +" "+ "and i am " + number +" "+"years old!" +} + const greeting = createLongGreeting("Daniel", 30); -const greeting = createLongGreeting("Daniel", 30); - -console.log(greeting); +console.log(greeting); \ No newline at end of file diff --git a/exercises/L-functions-nested/exercise.js b/exercises/L-functions-nested/exercise.js index a5d377442..8e7f821d6 100644 --- a/exercises/L-functions-nested/exercise.js +++ b/exercises/L-functions-nested/exercise.js @@ -3,3 +3,17 @@ var mentor2 = "Irina"; var mentor3 = "Mimi"; var mentor4 = "Rob"; var mentor5 = "Yohannes"; + + + function createCreeting(name) { + const upperName= name.toUpperCase(); + const message = + "hello " + upperName; + return message; + } + console.log(createCreeting(mentor1)); + console.log(createCreeting(mentor2)); + console.log(createCreeting(mentor3)); + console.log(createCreeting(mentor4)); + console.log(createCreeting(mentor5)); + \ No newline at end of file diff --git a/mandatory/1-syntax-errors.js b/mandatory/1-syntax-errors.js index a10cc9ac2..0d27af9ae 100644 --- a/mandatory/1-syntax-errors.js +++ b/mandatory/1-syntax-errors.js @@ -1,27 +1,24 @@ // 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; + const total = a + b; - return "The total is total"; + return "The total is " + total; } /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== - There are some Tests in this file that will help you work out if your code is working. - To run the tests for just this one file, type `npm test -- --testPathPattern 1-syntax-errors` into your terminal (Reminder: You must have run `npm install` one time before this will work!) - =================================================== */ @@ -37,4 +34,4 @@ test("introduceMe function returns the correct string", () => { test("getTotal returns a string describing the total", () => { expect(getTotal(23, 5)).toEqual("The total is 28"); -}); +}); \ No newline at end of file diff --git a/mandatory/2-logic-error.js b/mandatory/2-logic-error.js index 9cca7603b..c8d740a8a 100644 --- a/mandatory/2-logic-error.js +++ b/mandatory/2-logic-error.js @@ -1,24 +1,22 @@ // 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; + } /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== - There are some Tests in this file that will help you work out if your code is working. - To run the tests for just this one file, type `npm test -- --testPathPattern 2-logic-error` into your terminal (Reminder: You must have run `npm install` one time before this will work!) =================================================== @@ -48,4 +46,4 @@ test("multiply multiplies numbers", () => { test("multiply multiplies different numbers", () => { expect(multiply(2, 3, 4)).toEqual(24); -}); +}); \ No newline at end of file diff --git a/mandatory/3-function-output.js b/mandatory/3-function-output.js index 5a953ba60..d42138d88 100644 --- a/mandatory/3-function-output.js +++ b/mandatory/3-function-output.js @@ -9,6 +9,8 @@ function combine2Words(word1, word2) { } function concatenate(firstWord, secondWord, thirdWord) { + return firstWord.concat(" ", 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. } @@ -16,9 +18,7 @@ function concatenate(firstWord, secondWord, thirdWord) { /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== - There are some Tests in this file that will help you work out if your code is working. - To run the tests for just this one file, type `npm test -- --testPathPattern 3-function-output` into your terminal (Reminder: You must have run `npm install` one time before this will work!) ================================== @@ -34,4 +34,4 @@ test("concatenate example #2", () => { test("concatenate doesn't only accept strings", () => { expect(concatenate("I", "am", 13)).toEqual("I am 13"); -}); +}); \ No newline at end of file diff --git a/mandatory/4-tax.js b/mandatory/4-tax.js index ba77c7ae2..1f3ef91e2 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(price) { + const tax=(20*price) / 100; + return price + tax; +} /* CURRENCY FORMATTING @@ -13,18 +16,19 @@ function calculateSalesTax() {} The business has informed you that prices must have 2 decimal places They must also start with the currency symbol Write a function that adds tax to a number, and then transforms the total into the format £0.00 - Remember that the prices must include the sales tax (hint: you already wrote a function for this!) */ -function addTaxAndFormatCurrency() {} + + function addTaxAndFormatCurrency(price) { + + return `£${calculateSalesTax(price).toFixed(2)}`; +} /* =================================================== ======= TESTS - DO NOT MODIFY BELOW THIS LINE ===== - There are some Tests in this file that will help you work out if your code is working. - To run the tests for just this one file, type `npm test -- --testPathPattern 4-tax` into your terminal (Reminder: You must have run `npm install` one time before this will work!) =================================================== @@ -52,4 +56,4 @@ test("addTaxAndFormatCurrency for £17.50", () => { test("addTaxAndFormatCurrency for £34", () => { expect(addTaxAndFormatCurrency(34)).toEqual("£40.80"); -}); +}); \ No newline at end of file