From 63b2f627e16aecd57c8e3d6c2eabb7680e284f66 Mon Sep 17 00:00:00 2001 From: BoolPurist <fnxa@posteo.de> Date: Mon, 28 Feb 2022 16:35:02 +0100 Subject: [PATCH] Added 6. task --- Aufgaben/Money_Bridge/task_second_day.md | 50 +++++++++++++++++++ .../Bridge_Money_Console/MoneyUtility.cs | 6 +-- .../Bridge_Money_Console/Program.cs | 25 +++++++++- .../Bridge_Money_Tests/TestMoneyUtility.cs | 4 +- 4 files changed, 78 insertions(+), 7 deletions(-) diff --git a/Aufgaben/Money_Bridge/task_second_day.md b/Aufgaben/Money_Bridge/task_second_day.md index 3c52c4a..bba516c 100644 --- a/Aufgaben/Money_Bridge/task_second_day.md +++ b/Aufgaben/Money_Bridge/task_second_day.md @@ -321,3 +321,53 @@ Price 0.80 Euro and paid 0.82 Euro = Change: 0.02 Euro Price 2.42 Euro and paid 3.11 Euro = Change: 0.69 Euro Price 5.00 Euro and paid 3.00 Euro = Change: 0.00 Euro + +## 6. Task + +Nun soll die Funktion namens Subtract implementiert werden. + +Diese Funktion soll die Differenz aus 2 Euro Beträgen errechnen. +Beispielsweise soll die Funktion bei den Geldbeträgen 4 und 1 Euro den Betrag 3 Euro als Differenz zurückgeben. + +1. Parameter ist die linke Zahl einer Subtraction. +2. Parameter ist die rechte Zahle einer Subtraction. + +**Beispiel:** +```C# +Money left = MoneyUtility.CreateFrom(4, 0); +Money right = MoneyUtility.CreateFrom(1, 0); +Money difference = MoneyUtility.Subtract(left, right); +Console.WriteLine(MoneyUtility.GetTextFrom(difference)); // 3.00 Euro +``` +**Test Code:** +```C# +Console.WriteLine("Testing function Subtract"); + +Money left = MoneyUtility.CreateFrom(2, 0); +Money right = MoneyUtility.CreateFrom(2, 0); +Money result = MoneyUtility.Subtract(left, right); + +Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); + +left = MoneyUtility.CreateFrom(2, 10); +right = MoneyUtility.CreateFrom(1, 52); +result = MoneyUtility.Subtract(left, right); + +Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); + +left = MoneyUtility.CreateFrom(2, 50); +right = MoneyUtility.CreateFrom(3, 0); +result = MoneyUtility.Subtract(left, right); + +Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); +``` + +**Erwartete Ausgabe:** + +Testing function Subtract + +Difference: 0.00 Euro + +Difference: 0.58 Euro + +Difference: -0.50 Euro diff --git a/Code/Money_Bridge/Bridge_Money_Console/MoneyUtility.cs b/Code/Money_Bridge/Bridge_Money_Console/MoneyUtility.cs index 905533e..f36b5cb 100644 --- a/Code/Money_Bridge/Bridge_Money_Console/MoneyUtility.cs +++ b/Code/Money_Bridge/Bridge_Money_Console/MoneyUtility.cs @@ -30,10 +30,10 @@ namespace Bridge_Money_Console return result; } - public static Money Subtract(Money toSubstractFrom, Money toSubstract) + public static Money Subtract(Money toSubtractFrom, Money toSubtract) { - int totalCents = MoneyUtility.GetTotalCentsFrom(toSubstractFrom) - - MoneyUtility.GetTotalCentsFrom(toSubstract); + int totalCents = MoneyUtility.GetTotalCentsFrom(toSubtractFrom) + - MoneyUtility.GetTotalCentsFrom(toSubtract); Money result = new Money(); diff --git a/Code/Money_Bridge/Bridge_Money_Console/Program.cs b/Code/Money_Bridge/Bridge_Money_Console/Program.cs index 282c27a..fd3b05c 100644 --- a/Code/Money_Bridge/Bridge_Money_Console/Program.cs +++ b/Code/Money_Bridge/Bridge_Money_Console/Program.cs @@ -6,7 +6,7 @@ namespace Bridge_Money_Console { private static void Main() { - + Task6(); } private static void Task0() @@ -142,5 +142,28 @@ namespace Bridge_Money_Console ); } + + private static void Task6() + { + Console.WriteLine("Testing function Subtract"); + + Money left = MoneyUtility.CreateFrom(2, 0); + Money right = MoneyUtility.CreateFrom(2, 0); + Money result = MoneyUtility.Subtract(left, right); + + Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); + + left = MoneyUtility.CreateFrom(2, 10); + right = MoneyUtility.CreateFrom(1, 52); + result = MoneyUtility.Subtract(left, right); + + Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); + + left = MoneyUtility.CreateFrom(2, 50); + right = MoneyUtility.CreateFrom(3, 0); + result = MoneyUtility.Subtract(left, right); + + Console.WriteLine($"Difference: {MoneyUtility.GetTextFrom(result)}"); + } } } \ No newline at end of file diff --git a/Code/Money_Bridge/Bridge_Money_Tests/TestMoneyUtility.cs b/Code/Money_Bridge/Bridge_Money_Tests/TestMoneyUtility.cs index e124fbb..26e6b35 100644 --- a/Code/Money_Bridge/Bridge_Money_Tests/TestMoneyUtility.cs +++ b/Code/Money_Bridge/Bridge_Money_Tests/TestMoneyUtility.cs @@ -1,9 +1,7 @@ -using System; using Xunit; using Bridge_Money_Console; - namespace Bridge_Money_Tests { public partial class TestMoneyUtility @@ -86,7 +84,7 @@ namespace Bridge_Money_Tests [Theory] [MemberData(nameof(TestData_ApppendLeftZeros))] - public void Test_ApppendLeftZeros( + public void Test_AppendLeftZeros( int givenNumber, int requiredZeros, string expectedText -- GitLab