From 51ff128cba5953592e26b06c5e89a100c6393abe Mon Sep 17 00:00:00 2001 From: rummelti Date: Mon, 28 Oct 2024 15:06:41 +0100 Subject: [PATCH] Stand 001/14.10/15:56 --- .idea/libraries/junit_jupiter.xml | 17 ++++++++++ Prog 3 A.iml | 3 ++ TestTriangle/TriangleCheckerTest.java | 18 ++++++++++ src/praktikum01/Zahlenfilter.java | 42 +++++++++++------------ test/praktikum01/ZahlenfilterTest.java | 46 ++++++++++++++++++++++++++ 5 files changed, 104 insertions(+), 22 deletions(-) create mode 100644 .idea/libraries/junit_jupiter.xml create mode 100644 TestTriangle/TriangleCheckerTest.java create mode 100644 test/praktikum01/ZahlenfilterTest.java diff --git a/.idea/libraries/junit_jupiter.xml b/.idea/libraries/junit_jupiter.xml new file mode 100644 index 0000000..75dd289 --- /dev/null +++ b/.idea/libraries/junit_jupiter.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Prog 3 A.iml b/Prog 3 A.iml index c90834f..bcdf07b 100644 --- a/Prog 3 A.iml +++ b/Prog 3 A.iml @@ -3,9 +3,12 @@ + + + \ No newline at end of file diff --git a/TestTriangle/TriangleCheckerTest.java b/TestTriangle/TriangleCheckerTest.java new file mode 100644 index 0000000..0558196 --- /dev/null +++ b/TestTriangle/TriangleCheckerTest.java @@ -0,0 +1,18 @@ +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class TriangleCheckerTest { + + @Test + void checkTriangle() { + + float a = 3; + float b = 4; + float c = 5; + + TriangleChecker.TriangleType result = TriangleChecker.checkTriangle(a, b, c); + + assertEquals(TriangleChecker.TriangleType.NORMAL, result, "Normales Dreieck"); + } +} \ No newline at end of file diff --git a/src/praktikum01/Zahlenfilter.java b/src/praktikum01/Zahlenfilter.java index e0ab761..30c6d1b 100644 --- a/src/praktikum01/Zahlenfilter.java +++ b/src/praktikum01/Zahlenfilter.java @@ -2,10 +2,9 @@ package praktikum01; public class Zahlenfilter { - static int temp = 0; + static int wiederholen; public static void main(String[] args) { - int wiederholen; if( args.length == 0){ wiederholen= 200; @@ -13,31 +12,30 @@ public class Zahlenfilter { else { wiederholen= Integer.parseInt(args[0]); } + printNumbers(); System.out.println(wiederholen); - System.out.println(args.length); - for (int i = 0; i < wiederholen ; i++ ){ + //System.out.println(args.length); + } - System.out.println("Zahl |" +i+"|"); + private static void printNumbers(){ + for (int i=1; i <=wiederholen; i++) - //DURCH 5 TEILBAR---------------------------------------------------// + if(filter(i)) + System.out.println(i); + } - if (i % 5== 0){ - System.out.println(" '-----> ["+i+"] ist durch 5 teilbar!"); - } + public static boolean filter(int i){ + return !(checkDivisibleBy5(i) || checkEndsWith9(i) || checkSumDivisibleBy3(i, i-1)); + } - //AM ENDE EINE 9---------------------------------------------------// - if (i %10 ==9){ - System.out.println(" '-----> [" +i+"] ist endet auf 9!"); - } + public static boolean checkDivisibleBy5(int i){ + return (i % 5== 0); + } + public static boolean checkEndsWith9(int i){ + return (i %10 ==9); + } - //ADDIERT DURCH 3 TEILBAR -----------------------------------------// - if ((i + temp) % 3 ==0){ - int ergebnis = i +temp; - System.out.println(" '-----> ["+i+"] und [" +temp+ "] addiert ergeben [" +ergebnis + "] und [" +ergebnis+ "] ist durch 3 teilbar"); - } - //ZUWEISUNG TEMP WERT----------------------------------------------// - temp = i; - - } + public static boolean checkSumDivisibleBy3(int i, int j) { + return ((i + j) % 3 ==0); } } diff --git a/test/praktikum01/ZahlenfilterTest.java b/test/praktikum01/ZahlenfilterTest.java new file mode 100644 index 0000000..7027e21 --- /dev/null +++ b/test/praktikum01/ZahlenfilterTest.java @@ -0,0 +1,46 @@ +package praktikum01; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class ZahlenfilterTest { + + + @Test + void filter() { + assertTrue(Zahlenfilter.filter(7)); + + // Testfall 2: Zahl, die die Filterkriterien nicht erfüllt (z.B. 15 - teilbar durch 5) + assertFalse(Zahlenfilter.filter(15)); + + } + + @Test + void checkDivisibleBy5() { + + assertTrue(Zahlenfilter.checkDivisibleBy5(10)); + + // Testfall 2: Zahl, die nicht durch 5 teilbar ist + assertFalse(Zahlenfilter.checkDivisibleBy5(7)); + } + + @Test + void checkEndsWith9() { + + assertTrue(Zahlenfilter.checkEndsWith9(29)); + + // Testfall 2: Zahl, die nicht auf 9 endet + assertFalse(Zahlenfilter.checkEndsWith9(20)); + + } + + @Test + void checkSumDivisibleBy3() { + assertTrue(Zahlenfilter.checkSumDivisibleBy3(4, 2)); + + // Testfall 2: Summe von zwei Zahlen, die nicht durch 3 teilbar ist (z.B. 4 + 3 = 7) + assertFalse(Zahlenfilter.checkSumDivisibleBy3(4, 3)); + + } +} \ No newline at end of file