diff --git a/mandatory/1-fix-functions.js b/mandatory/1-fix-functions.js index 6323604f..9b3bad8b 100644 --- a/mandatory/1-fix-functions.js +++ b/mandatory/1-fix-functions.js @@ -10,10 +10,10 @@ */ -function getMood() { - let isHappy = true; +function getMood(mood) { + let isHappy = mood; - if (isHappy) { + if (isHappy === true) { return "I am happy"; } else { return "I am not happy"; @@ -21,12 +21,13 @@ function getMood() { } function greaterThan10(num) { - let isBigEnough; + let isBigEnough = num; - if (isBigEnough) { + if (isBigEnough > 10) { return "num is greater than 10"; } else { return "num is not big enough"; + } } diff --git a/mandatory/2-function-creation.js b/mandatory/2-function-creation.js index d4590920..53af06fa 100644 --- a/mandatory/2-function-creation.js +++ b/mandatory/2-function-creation.js @@ -4,7 +4,15 @@ 1. the user should be 18 or older 2. the user must be logged in */ -function isAcceptableUser(userAge, isLoggedIn) {} +function isAcceptableUser(userAge, isLoggedIn) { + if (userAge >= 18 && isLoggedIn === true) { + return true; + } + else { + return false; + } +} + /* Complete the function to apply discount percent based on how much is totalPrice in user cart. @@ -15,27 +23,64 @@ function isAcceptableUser(userAge, isLoggedIn) {} is applieds and 142.5 should be returned) */ -function applyDiscount(totalPrice) {} +function applyDiscount(totalPrice) { + if (totalPrice >= 200) { + return totalPrice * 0.9; + } + else { + return totalPrice * 0.95; -/* + } + + + +} + + +/*let limit = 0; Complete the function to print to the console the odd numbers between 1 and limit (use a while loop): */ -function printOddNumbers(limit) {} +function printOddNumbers(limit) { + + for (let i = 0; i <= limit; i++) { + if (i % 2 === 1) { + console.log(i); + } + } + + +} /* Complete the buyTwoGetTheCheapestFree function: if user buys two items, the cheapest item will be free! The function should return the price to be paid once the discount is applied. */ -function buyTwoGetTheCheapestFree(price1, price2) {} +function buyTwoGetTheCheapestFree(price1, price2) { + if (price1 > price2) { + return price1; + } + else { + return price2; + } + + +} /* Complete the function to determine if it is suitable for a person to register based on their age! - if the person is 12 or younger it should return "You Are Too Young To Register" - if the person is older than 12 and younger than 90 it should return "You Can Register" - if the person is 90 or older it should return "You Don't Need To Register" */ -function canRegister(age) {} - +function canRegister(age) { + if (age <= 12) { + return "You Are Too Young To Register"; + } else if (age < 90) { + return "You Can Register"; + } else { + return "You Don't Need To Register"; + } +} /* Complete the function so that it prints out to the console numbers in reverse order starting at number and going down to 1 (e.g. if number was 3, it would print: @@ -45,7 +90,11 @@ function canRegister(age) {} ) */ -function countReverse(number) {} +function countReverse(number) { + for (let i = number; i >= 1; i--) { + console.log(i); + } +} /* ======= TESTS - DO NOT MODIFY ===== */ @@ -90,11 +139,11 @@ describe("printOddNumbers", () => { const consoleLogSpy = jest.spyOn(console, "log"); printOddNumbers(10); - expect(consoleLogSpy).toHaveBeenNthCalledWith(1,1); - expect(consoleLogSpy).toHaveBeenNthCalledWith(2,3); - expect(consoleLogSpy).toHaveBeenNthCalledWith(3,5); - expect(consoleLogSpy).toHaveBeenNthCalledWith(4,7); - expect(consoleLogSpy).toHaveBeenNthCalledWith(5,9); + expect(consoleLogSpy).toHaveBeenNthCalledWith(1, 1); + expect(consoleLogSpy).toHaveBeenNthCalledWith(2, 3); + expect(consoleLogSpy).toHaveBeenNthCalledWith(3, 5); + expect(consoleLogSpy).toHaveBeenNthCalledWith(4, 7); + expect(consoleLogSpy).toHaveBeenNthCalledWith(5, 9); consoleLogSpy.mockRestore(); }); @@ -141,13 +190,13 @@ describe("countReverse", () => { const consoleLogSpy = jest.spyOn(console, "log"); countReverse(7); - expect(consoleLogSpy).toHaveBeenNthCalledWith(1,7); - expect(consoleLogSpy).toHaveBeenNthCalledWith(2,6); - expect(consoleLogSpy).toHaveBeenNthCalledWith(3,5); - expect(consoleLogSpy).toHaveBeenNthCalledWith(4,4); - expect(consoleLogSpy).toHaveBeenNthCalledWith(5,3); - expect(consoleLogSpy).toHaveBeenNthCalledWith(6,2); - expect(consoleLogSpy).toHaveBeenNthCalledWith(7,1); + expect(consoleLogSpy).toHaveBeenNthCalledWith(1, 7); + expect(consoleLogSpy).toHaveBeenNthCalledWith(2, 6); + expect(consoleLogSpy).toHaveBeenNthCalledWith(3, 5); + expect(consoleLogSpy).toHaveBeenNthCalledWith(4, 4); + expect(consoleLogSpy).toHaveBeenNthCalledWith(5, 3); + expect(consoleLogSpy).toHaveBeenNthCalledWith(6, 2); + expect(consoleLogSpy).toHaveBeenNthCalledWith(7, 1); consoleLogSpy.mockRestore(); });