diff --git a/extra/1-factorial.js b/extra/1-factorial.js index da9f8e6c..e0fb2e3c 100644 --- a/extra/1-factorial.js +++ b/extra/1-factorial.js @@ -9,7 +9,12 @@ */ function factorial(input) { - // TODO + let result = 1; + + for(let i=2; i <= input; i++) { + result *= i + } + return result; } /* ======= TESTS - DO NOT MODIFY ===== */ diff --git a/mandatory/1-fix-functions.js b/mandatory/1-fix-functions.js index 6323604f..a50ac997 100644 --- a/mandatory/1-fix-functions.js +++ b/mandatory/1-fix-functions.js @@ -10,10 +10,8 @@ */ -function getMood() { - let isHappy = true; - - if (isHappy) { +function getMood(happy) { + if (happy) { return "I am happy"; } else { return "I am not happy"; @@ -21,9 +19,7 @@ function getMood() { } function greaterThan10(num) { - let isBigEnough; - - if (isBigEnough) { + if (num > 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..b3e45bcc 100644 --- a/mandatory/2-function-creation.js +++ b/mandatory/2-function-creation.js @@ -4,8 +4,16 @@ 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 if (userAge > 18 && isLoggedIn === true) { + return false; + } else { + return false; + } +} /* Complete the function to apply discount percent based on how much is totalPrice in user cart. - When the total price is greater than 200, a 10% discount should be applied @@ -15,18 +23,39 @@ 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 if ( totalPrice < 200) { + return totalPrice * 0.95; + } +} /* 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 = 1; 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 <= 0 || price2 <= 0) { + return "Invalid prices. Prices must be more than 0."; + } + 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! @@ -34,7 +63,15 @@ function buyTwoGetTheCheapestFree(price1, price2) {} - 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 > 12 && age < 90) { + return"You Can Register" + }else if (age >= 90) { + return "You Don't Need To Register" + } +} /* Complete the function so that it prints out to the console numbers in reverse order starting at @@ -45,7 +82,11 @@ function canRegister(age) {} ) */ -function countReverse(number) {} +function countReverse(number) { + for (let i = number; i >= 1; i--) { + console.log(i); + } +} /* ======= TESTS - DO NOT MODIFY ===== */