diff --git a/csharp-fundamentals-methods.Main/Core.cs b/csharp-fundamentals-methods.Main/Core.cs index aad1694..fb630ec 100644 --- a/csharp-fundamentals-methods.Main/Core.cs +++ b/csharp-fundamentals-methods.Main/Core.cs @@ -27,7 +27,7 @@ logic. See the example below and take some time to break it down and understand //TODO: 1. Create a method that accepts a name and returns a greeting public string greet(string name) { - throw new NotImplementedException(); + return $"Hello {name}!"; } //TODO: 2. Increment a number @@ -36,7 +36,7 @@ Complete this method so that it increases the number given by 1 and returns the */ public int increment(int number) { - throw new NotImplementedException(); + return number += 1; } //TODO: 3. Construct a friendly greeting @@ -50,7 +50,7 @@ Complete this method so that it accepts a name as an input and outputs a friendl */ public string happilyGreet(string name) { - throw new NotImplementedException(); + return $"Hi, {name} :)"; } //TODO: 4. Construct an array of numbers @@ -67,8 +67,13 @@ Create a method named constructNumberArray that accepts two whole numbers named public int[] constructNumberArray(int lower, int upper) { - int[] resultArray = { }; - + int size = upper - lower + 1; // Calculate the size of the array + int[] resultArray = new int[size]; + for (int i = 0; i < size; i++) + { + resultArray[i] = lower + i; + } + return resultArray; } @@ -84,9 +89,10 @@ The number of exclamation marks appended must be determined by the number provid error, 10 | ERROR!!!!!!!!!! */ - public string shout(string phrase, int number) + public string shout(string phrase, int number) { - return $""; + string exclamationsMarks = new string('!', number); + return $"{phrase.ToUpper()}{exclamationsMarks}"; } } } diff --git a/csharp-fundamentals-methods.Main/Extension.cs b/csharp-fundamentals-methods.Main/Extension.cs index f7a9b9a..a4e6f5f 100644 --- a/csharp-fundamentals-methods.Main/Extension.cs +++ b/csharp-fundamentals-methods.Main/Extension.cs @@ -20,7 +20,12 @@ public class Extension */ public string timerStatus(int timeLeftInMin) { - throw new NotImplementedException(); + return timeLeftInMin switch + { + 0 => "The cake is ready!", + > 0 => "The cake is still baking!", + _ => "The timer finished ages ago!" + }; } //TODO: Extension 2: Estimate Prep Time @@ -35,7 +40,16 @@ provided and the prep time per ingredient. public double estimatePrepTime(string[] ingredients, int prepTimePerIngredient) { - throw new NotImplementedException(); + int totalPrepTime = 0; + if (prepTimePerIngredient == 0) + { + prepTimePerIngredient = 2; // Default prep time per ingredient + } + foreach (string ingredient in ingredients) + { + totalPrepTime += prepTimePerIngredient; + } + return totalPrepTime; } //TODO: Extension 3: calculateGramsOfSugar that accepts two parameters 1 an array of ingredients that will always contain 3 ingredients AND 2 the number of layers the cake has. The cake will need 100g of sugar per layer, if that ingredient is present in the provided list of ingredients. The method should return the number of grams of sugar needed to make the cake. @@ -49,7 +63,12 @@ public double estimatePrepTime(string[] ingredients, int prepTimePerIngredient) public double calculateGramsOfSugar(string[] ingredients, int numberOfCakeLayers) { - throw new NotImplementedException(); + int totalGramsOfSugar = 0; + if (ingredients.Contains("sugar")) + { + totalGramsOfSugar = 100 * numberOfCakeLayers; + } + return totalGramsOfSugar; } } }