From 599c7c6790b60e13cde8fea847bfc33d06273718 Mon Sep 17 00:00:00 2001 From: Jannis Fingerhut Date: Mon, 6 Feb 2023 21:16:59 +0100 Subject: [PATCH] Erstes --- gruppenprojekt/.DS_Store | Bin 0 -> 6148 bytes gruppenprojekt/Aaaa.java | 10 --- gruppenprojekt/Main.java | 158 ++++++++++++++++++++++++++++++++++ gruppenprojekt/TestKlasee.txt | 67 ++++++++++++++ 4 files changed, 225 insertions(+), 10 deletions(-) create mode 100644 gruppenprojekt/.DS_Store delete mode 100644 gruppenprojekt/Aaaa.java create mode 100755 gruppenprojekt/Main.java create mode 100755 gruppenprojekt/TestKlasee.txt diff --git a/gruppenprojekt/.DS_Store b/gruppenprojekt/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..45bfe5b348544982e324f96235fe97deacc212bb GIT binary patch literal 6148 zcmeHKJx>EM41I1|Z|d=$1(0P!xLuHswdH39MZk- z;gY*v;Q_7vuNU)bJ?E@abIW%6VM41nV!5ie5y^bW2m{_p%@O3~4Y(>>84hrR5*yUG zK*iNJ?3G-<#xv?^)miINH%cWhDS{z+n^G`e4?Wl(ERzIC6#}9!m63$t8w(ILA}=D>62Y9uCRHhvb#F z#f#YL%%991QaFYV27-Yu16uo1Mtc9B^Oxx@^35ewFc1vV>pwR9-0@%@W= 0; i--) { + char currentChar = binaryCode.charAt(i); + if (currentChar == '1') { + decimal += Math.pow(2, binaryCode.length() - i - 1); + } else if (currentChar != '0') { + System.out.println("Ungültiger Binärcode! Bitte gebe nur Nullen und Einsen ein."); + return 0; + } + } + return decimal; + } + public static int decimalToBinary(int decimal) { + int binary = 0; + int power = 0; + while (decimal > 0) { + binary += (decimal % 2) * (int) Math.pow(10, power); + decimal /= 2; + power++; + } + return binary; + } + + +public static void main(String[] args) { + + System.out.println("Willkommen bei dem kleinen konsolenbasierten Lernprogramm!\n Du hast 3 Spielmodi:\n"); + System.out.println("1. Karteikarten (1)\n"); + System.out.println("2. Quizz(2)\n"); + System.out.println("3. Binaer-Inverter(3)\n"); + + System.out.println("Gebe eine Zahl ein:"); + + + try (Scanner scanner = new Scanner(System.in)) { + int wahl = scanner.nextInt(); + switch (wahl) { + case 1: + Karteikarten(); + break; + + case 2: + Quizz(); + break; + + case 3: + Binaerrechner(); + break; + default: + System.out.println("Ungültige Eingabe, versuche es erneut!"); + + + } + } + + System.out.println("Wir hoffen, dir hat das Programm gefallen.\n" + + "Du kannst es selber um weitere Funktionen erweitern, wenn du möchtest!"); + } +} \ No newline at end of file diff --git a/gruppenprojekt/TestKlasee.txt b/gruppenprojekt/TestKlasee.txt new file mode 100755 index 0000000..c46c567 --- /dev/null +++ b/gruppenprojekt/TestKlasee.txt @@ -0,0 +1,67 @@ +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.util.Random; + +import org.junit.Test; + +public class TestKlasee { + + + @Test + public void testKarteikarten() { + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + Programm.Karteikarten(); + String expectedOutput = "Was ist die Hauptstadt von Deutschland?\n" + + "Berlin\n" + + "Korrekt!\n" + + "Welches ist der größtes Planet in unserem Sonnensystem?\n" + + "Jupiter\n" + + "Korrekt!\n" + + "Was hat die Mona Lisa gemalt?\n" + + "Leonardo da Vinci\n" + + "Korrekt!\n" + + "Das Spiel ist zu Ende. Dein Punktestand ist 3 von insgesamt 3\n"; + + assertEquals(expectedOutput, outContent.toString()); + } + + @Test + public void testQuizz() { + Random rand = new Random(); + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + Programm.Quizz(); + String expectedOutput = "Wer hat die Formel E=mc² entwickelt?\n" + + "A) Isaac Newton\n" + + "B) Albert Einstein\n" + + "C) Galileo Galilei\n" + + "D) Stephen Hawking\n" + + "B\n" + + "Richtig!\n"; + + assertEquals(expectedOutput, outContent.toString()); + } + + @Test + public void testBinaerrechner() { + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + Programm.Binaerrechner(); + String expectedOutput = "Gebe den ersten Binärcode ein: 11\n" + + "Gebe den zweiten Binärcode ein: 10\n" + + "Gebe die gewünschte Operation ein (+, -, *, /): +\n" + + "Das Ergebnis ist: 101\n"; + + assertEquals(expectedOutput, outContent.toString()); + } + +} + +