From 774e4cf6b191109b08cf531cefdc6a1c6ca49ac6 Mon Sep 17 00:00:00 2001 From: David Stern Date: Tue, 12 Aug 2025 12:20:15 +0200 Subject: [PATCH] Ex completed --- .../java/com/booleanuk/core/Exercise.java | 70 +++++++++++++++---- .../com/booleanuk/extension/Extension.java | 33 +++++++++ 2 files changed, 89 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Exercise.java b/src/main/java/com/booleanuk/core/Exercise.java index 70ac307..cc94aeb 100644 --- a/src/main/java/com/booleanuk/core/Exercise.java +++ b/src/main/java/com/booleanuk/core/Exercise.java @@ -40,60 +40,80 @@ public String sayGoodMorning(boolean isMorning) { // 1. What will the returned value be if I run sayGoodMorning(false)? // Change the returned value in the method below to your answer. It is case-sensitive. public String one() { - return ""; + return "Good day!"; } // 2. What will the output be if I run sayGoodMorning(true)? // Change the returned value in the method below to your answer. It is case-sensitive. public String two() { - return ""; + return "Good morning!"; } // 3. What will the output be if I run sayGoodMorning("Hello".equals("Hello"))? // Change the returned value in the method below to your answer. It is case-sensitive. public String three() { - return ""; + return "Good morning!"; } // 4. What will the output be if I run sayGoodMorning(!"A word".equals("Another word")) public String four() { - return ""; + return "Good morning!"; } // 5. What will the output be if I run sayGoodMorning(25 != 25) public String five() { - return ""; + return "Good day!"; } // 6. Use a conditional statement to return "Correct!" if the input is more than 7 // or "Wrong!" if not public String six(int num) { - return "Not implemented yet!"; + if (num > 7) { + return "Correct!"; + } else { + return "Wrong!"; + } } // 7. Use a conditional statement to return "Correct!" if the input is false // or "Wrong!" if not public String seven(boolean bool) { - return "Not implemented yet!"; + if (!bool) { + return "Correct!"; + } else { + return "Wrong!"; + } } // 8. Use a conditional statement to return "Correct!" if numOne is more than or equal to numTwo // or "Wrong!" if not public String eight(int numOne, int numTwo) { - return "Not implemented yet!"; + if (numOne >= numTwo) { + return "Correct!"; + } else { + return "Wrong!"; + } } // 9. Use a conditional statement to return true if the array provided is not empty // or false if it is empty public boolean nine(int[] nums) { - return false; + if (nums.length > 0) { + return true; + } else { + return false; + } } // 10. Use a conditional statement to return true if the provided string contains the word // "milk", or false if not // https://www.w3schools.com/java/java_ref_string.asp public boolean ten(String sentence) { - return false; + if (sentence.contains("milk")) { + return true; + } else { + return false; + } } // 11. Use conditional statements to return the number 3 if the provided string contains @@ -101,17 +121,29 @@ public boolean ten(String sentence) { // Return the number 9 if the string contains both coffee and milk. // Otherwise, return the number 0. public int eleven(String sentence) { - return -1; + if (sentence.contains("milk") && sentence.contains("coffee")) { + return 9; + } else if (sentence.contains("milk")) { + return 3; + } else if (sentence.contains("coffee")) { + return 6; + } else { + return 0; + } } // 12. Use conditional statements to return true if num is more than or equal to lower and is // less than or equal to upper, otherwise return false. public boolean twelve(int num, int lower, int upper) { - return false; + if (num <= upper && num >= lower) { + return true; + } else { + return false; + } } /* - 12. Use conditional statements to return a string based on what the age parameter is. + 13. Use conditional statements to return a string based on what the age parameter is. The table below shows the string that should be returned for each range of values that age can be. For example: If age is 3, you should return "Toddler" @@ -123,6 +155,16 @@ public boolean twelve(int num, int lower, int upper) { 20+ | Adult */ public String thirteen(int age) { - return "Not implemented yet!"; + if (age >=1 && age <=4) { + return "Toddler"; + } else if (age >=5 && age <=12) { + return "Child"; + } else if (age >=13 && age <=19) { + return "Teenager"; + } else if (age >= 20) { + return "Adult"; + } else { + return "Baby"; + } } } diff --git a/src/main/java/com/booleanuk/extension/Extension.java b/src/main/java/com/booleanuk/extension/Extension.java index 44e540f..23f74c3 100644 --- a/src/main/java/com/booleanuk/extension/Extension.java +++ b/src/main/java/com/booleanuk/extension/Extension.java @@ -2,6 +2,9 @@ import com.booleanuk.helpers.ExtensionBase; +import java.util.Arrays; +import java.util.stream.IntStream; + public class Extension extends ExtensionBase { /* 1. We're going to improve our cake baking capabilities! @@ -13,6 +16,15 @@ public class Extension extends ExtensionBase { "The cake is still baking!" if there are any remaining minutes left, and "The timer finished ages ago!" if the remaining minutes is a negative number */ + public String timerStatus(int minutesLeft) { + if (minutesLeft > 0) { + return "The cake is still baking!"; + } else if (minutesLeft == 0) { + return "The cake is ready!"; + } else { + return "The timer finished ages ago!"; + } + } @@ -27,6 +39,12 @@ public class Extension extends ExtensionBase { If a prep time of 0 is provided, the method should assume each ingredient takes 2 minutes to prepare. */ + public int estimatePrepTime(String[] ingredients, int prepTime) { + if (prepTime == 0) { + prepTime = 2; + } + return prepTime * ingredients.length; + } /* 3. @@ -41,6 +59,21 @@ public class Extension extends ExtensionBase { You may need to use programming techniques we have yet to cover in the course to solve this task. */ + public int calculateGramsOfSugar(String[] ingredients, int numOfLayers) { + if (ingredients.length != 3) { + return -1; + } + + int sugarCount = 0; + + for (String ingredient : ingredients) { + if (ingredient.equals("sugar")) { + sugarCount++; + } + } + + return 100 * sugarCount * numOfLayers; + }