diff --git a/.idea/libraries/jars.xml b/.idea/libraries/jars.xml new file mode 100644 index 0000000..555bc6d --- /dev/null +++ b/.idea/libraries/jars.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..0319d5d --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..bdf963f --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..797acea --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/TriangleCheckerAssignment.iml b/TriangleCheckerAssignment.iml new file mode 100644 index 0000000..506243b --- /dev/null +++ b/TriangleCheckerAssignment.iml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/TriangleChecker.java b/src/TriangleChecker.java index 14f4841..a83b074 100644 --- a/src/TriangleChecker.java +++ b/src/TriangleChecker.java @@ -1,15 +1,14 @@ import java.util.Scanner; public class TriangleChecker { - + public enum TriangleType { - NONE, + NONE, NORMAL, ISOSCELES, // Gleichschenklig EQUILATERAL // Gleichseitig } - public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("Geben Sie die Seitenlängen ein."); @@ -32,23 +31,36 @@ public class TriangleChecker { switch (type) { case NONE: System.out.println("Kein Dreieck"); - break; + break; case NORMAL: System.out.println("Dreieck"); - break; + break; case ISOSCELES: System.out.println("Gleichschenkliges Dreieck"); - break; + break; case EQUILATERAL: System.out.println("Gleichseitiges Dreieck"); - break; + break; } } // Analyse der Dreiecksart public static TriangleType checkTriangle(float a, float b, float c) { + //check for shape + if (a + b > c && a + c > b && b + c > a) { + if (a == b && b == c) { + //gleichseitiges Dreieck + return TriangleType.EQUILATERAL; + } + if (a == b || a == c || b == c) { + //gleichschenkliges Dreieck + return TriangleType.ISOSCELES; + } + //normales Dreieck + return TriangleType.NORMAL; + } + //kein Dreieck return TriangleType.NONE; } - } \ No newline at end of file diff --git a/test/TriangleCheckerTest.java b/test/TriangleCheckerTest.java index 5c9ff57..99676f1 100644 --- a/test/TriangleCheckerTest.java +++ b/test/TriangleCheckerTest.java @@ -12,10 +12,37 @@ public class TriangleCheckerTest { float c = 4; // Act - TriangleChecker.TriangleType type = TriangleChecker.checkTriangle(a, b, c); + TriangleChecker.TriangleType normal = TriangleChecker.checkTriangle(a, b, c); // Assert - assertEquals(TriangleChecker.TriangleType.NORMAL, type); + assertEquals(TriangleChecker.TriangleType.NORMAL, normal); + + //Arrange + a = 1; b = 10; c = 1; + + //Act + TriangleChecker.TriangleType none = TriangleChecker.checkTriangle(a, b, c); + + //Assert + assertEquals(TriangleChecker.TriangleType.NONE, none); + + //Arrange + a = 3; b = 3; c = 2; + + //Act + TriangleChecker.TriangleType iso = TriangleChecker.checkTriangle(a, b, c); + + //Assert + assertEquals(TriangleChecker.TriangleType.ISOSCELES, iso); + + //Arrange + a = 4; b = 4; c = 4; + + //Act + TriangleChecker.TriangleType equi = TriangleChecker.checkTriangle(a, b, c); + + //Assert + assertEquals(TriangleChecker.TriangleType.EQUILATERAL, equi); }