From 06212004e2c185c44bfdac022fb1d9a9ddc5b10b Mon Sep 17 00:00:00 2001 From: Aminos061 Date: Tue, 7 May 2024 14:03:28 +0200 Subject: [PATCH 1/2] new Exercises --- Exercises/Testat1/Aufgabe2/Employee.java | 2 +- Exercises/Testat1/Aufgabe2/Main.java | 56 +++++++ Exercises/Testat1/Aufgabe2/Person.java | 3 +- Exercises/Testat1/Aufgabe2/Teacher.java | 2 +- Exercises/Testat1/Aufgabe2/people | 4 +- .../Testat1/Tutor_Aufgaben/Aufgabenstellungen | 6 +- .../Tutor_Aufgaben/Buffered/Buffered.java | 40 +++++ .../Tutor_Aufgaben/Clone/AlienCloneTest.java | 4 +- .../Tutor_Aufgaben/Clone/Raumanzug.java | 13 +- .../DateFormatter/DateConverter.java | 27 ++++ .../Tutor_Aufgaben/Serialisierung/Main.java | 6 +- Lernen/CloneMitArrayList.java | 70 +++++++++ Lernen/DemoSeekMethode.java | 27 ++++ Lernen/ObjectInputOutputStreamEx.java | 2 +- Lernen/Person.java | 7 +- Lernen/Test.java | 12 +- Lernen/WordCounter.java | 95 ++++++++++++ .../Uebung3_Buchungen/Buchung.java | 6 +- .../Uebung3_Buchungen/BuchungenAufgabe.java | 55 ++++--- Moodle_Uebungen/Uebung3_Buchungen/Reader.java | 63 -------- bin/.gitignore | 6 + bin/Lernen/ObjectInputOutputStreamEx.class | Bin 1562 -> 1619 bytes bin/Lernen/Person.class | Bin 1065 -> 1373 bytes bin/Lernen/Test.class | Bin 1286 -> 1342 bytes bin/Testat1/Aufgabe2/Employee.class | Bin 1132 -> 1131 bytes bin/Testat1/Aufgabe2/Main.class | Bin 389 -> 3914 bytes bin/Testat1/Aufgabe2/Person.class | Bin 1342 -> 1521 bytes bin/Testat1/Aufgabe2/Teacher.class | Bin 1157 -> 1158 bytes bin/Testat1/Aufgabe2/people | 4 +- bin/Testat1/Tutor_Aufgaben/Aufgabenstellungen | 6 +- .../Tutor_Aufgaben/Clone/AlienCloneTest.class | Bin 1282 -> 1339 bytes .../Tutor_Aufgaben/Clone/Raumanzug.class | Bin 2143 -> 2365 bytes .../Tutor_Aufgaben/Serialisierung/Main.class | Bin 2649 -> 2813 bytes bin/Uebung3_Buchungen/Buchung.class | Bin 1547 -> 1557 bytes bin/Uebung3_Buchungen/BuchungenAufgabe.class | Bin 2887 -> 4291 bytes bin/Uebung3_Buchungen/Reader.class | Bin 2879 -> 0 bytes buchungen2.text | 7 + gedichte.txt | 145 ++++++++++++++++++ serializedProduct.xml | 14 ++ 39 files changed, 567 insertions(+), 115 deletions(-) create mode 100644 Exercises/Testat1/Tutor_Aufgaben/Buffered/Buffered.java create mode 100644 Exercises/Testat1/Tutor_Aufgaben/DateFormatter/DateConverter.java create mode 100644 Lernen/CloneMitArrayList.java create mode 100644 Lernen/DemoSeekMethode.java create mode 100644 Lernen/WordCounter.java delete mode 100644 Moodle_Uebungen/Uebung3_Buchungen/Reader.java delete mode 100644 bin/Uebung3_Buchungen/Reader.class create mode 100644 buchungen2.text create mode 100644 gedichte.txt create mode 100644 serializedProduct.xml diff --git a/Exercises/Testat1/Aufgabe2/Employee.java b/Exercises/Testat1/Aufgabe2/Employee.java index 0070f97..6ca0bf5 100644 --- a/Exercises/Testat1/Aufgabe2/Employee.java +++ b/Exercises/Testat1/Aufgabe2/Employee.java @@ -12,6 +12,6 @@ public class Employee extends Person{ @Override public String toString() { - return super.toString() + ", salary= " + salary; + return super.toString() + ", salary=" + salary; } } diff --git a/Exercises/Testat1/Aufgabe2/Main.java b/Exercises/Testat1/Aufgabe2/Main.java index 3b20fc3..b6eb38d 100644 --- a/Exercises/Testat1/Aufgabe2/Main.java +++ b/Exercises/Testat1/Aufgabe2/Main.java @@ -1,7 +1,63 @@ package Testat1.Aufgabe2; + +import java.io.FileReader; +import java.io.LineNumberReader; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.ArrayList; + public class Main { public static void main(String[] args) { + ArrayList people = new ArrayList<>(); + try (LineNumberReader reader = new LineNumberReader(new FileReader("Exercises/Testat1/Aufgabe2/people"))){ + String line; + boolean isOddLine = true; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + while((line = reader.readLine()) != null) { + if(isOddLine) { + String[] parts = line.split("\\s+"); + LocalDate date = LocalDate.parse(parts[1], formatter); + String name = parts[2]; + int age = Integer.parseInt(parts[3]); + double size = Double.parseDouble(parts[4].replace(',', '.')); + if(parts[0].equals("Person")) { + people.add(new Person(date, name, age, size)); + } + else if(parts[0].equals("Student")) { + String subject = parts[5]; + people.add(new Student(date, name, age, size, subject)); + } + else if(parts[0].equals("Employee")) { + double salary = Double.parseDouble(parts[5]); + people.add(new Employee(date, name, age, size, salary)); + } + else if(parts[0].equals("Teacher")) { + String field = parts[5]; + people.add(new Teacher(date, name, age, size, field)); + } + + } + isOddLine = !isOddLine; + } + } catch (Exception e) { + e.printStackTrace(); + } + for (Person person : people) { + System.out.println(person.toString()); + } + System.out.printf("Durchschnittsalter: %s\n", Main.durchschnittRechner(people)); } + public static double durchschnittRechner (ArrayList people) { + if(people.isEmpty() || people == null) { + return 0.0; + } + int summe = 0; + for (Person person : people) { + summe = summe + person.getAge(); + } + return (double) summe/people.size(); + } + } diff --git a/Exercises/Testat1/Aufgabe2/Person.java b/Exercises/Testat1/Aufgabe2/Person.java index 1595942..ae26d3c 100644 --- a/Exercises/Testat1/Aufgabe2/Person.java +++ b/Exercises/Testat1/Aufgabe2/Person.java @@ -17,9 +17,10 @@ public class Person { @Override public String toString() { - return "Person: dateOfEm=" + dateOfEm + ", name=" + name + ", age=" + age + ", size=" + size; + return getClass().getName().split("\\.")[2] + ": dateOfEm=" + dateOfEm + ", name=" + name + ", age=" + age + ", size=" + size; } public int getAge() { + return age; } diff --git a/Exercises/Testat1/Aufgabe2/Teacher.java b/Exercises/Testat1/Aufgabe2/Teacher.java index 7fe9353..0cf5eec 100644 --- a/Exercises/Testat1/Aufgabe2/Teacher.java +++ b/Exercises/Testat1/Aufgabe2/Teacher.java @@ -10,6 +10,6 @@ public class Teacher extends Person{ this.fach = fach; } public String toString() { - return super.toString() + ", fach" + fach; + return super.toString() + ", fach=" + fach; } } diff --git a/Exercises/Testat1/Aufgabe2/people b/Exercises/Testat1/Aufgabe2/people index 6adfbfb..25434f0 100644 --- a/Exercises/Testat1/Aufgabe2/people +++ b/Exercises/Testat1/Aufgabe2/people @@ -1,6 +1,6 @@ -Person 15.05.2017 Max 25 1.75 +Person 15.05.2017 Max 25 1.75 xxxxxxxxxxxxxxxxxxxx -Student 12.09.2020 Lisa 20 1.60 Physics +Student 12.09.2020 Lisa 20 1.60 Physics xxxxxxxxxxxxxxxxxxxx Employee 04.04.2010 John 30 1.80 50000 yyyyyyyyyyyyyyyyyyyy diff --git a/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen b/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen index 57fc806..7952884 100644 --- a/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen +++ b/Exercises/Testat1/Tutor_Aufgaben/Aufgabenstellungen @@ -13,9 +13,11 @@ Testen Sie, ob Ihre Implementierung korrekt funktioniert, indem Sie die vorhande Damit die Tests laufen können, müssen Sie die Kommentarzeichen entfernen. 3. BufferedWriter/Reader: -Schreiben Sie die Datei Mondnacht.txt per BufferedWriter in Java und Lesen Sie die Datei Mondnacht.txt zeilenweise ein und geben +Schreiben Sie die Datei Mondnacht.txt per BufferedWriter in Java und +Lesen Sie die Datei Mondnacht.txt zeilenweise ein und geben Sie die Zeilen mit einer fortlaufenden Zeilennummer wieder aus. -Dazu soll noch die Anzahl der Wörter, Buchstaben und Zeilen am Ende ausgegeben werden. Verwenden Sie hierzu einen BufferedReader. +Dazu soll noch die Anzahl der Wörter, Buchstaben und Zeilen am Ende ausgegeben werden. +Verwenden Sie hierzu einen BufferedReader. 4. Serialisierung: Serialisieren Sie die Klasse Produkt und testen Sie ob die Serialisierung funktioniert hat. diff --git a/Exercises/Testat1/Tutor_Aufgaben/Buffered/Buffered.java b/Exercises/Testat1/Tutor_Aufgaben/Buffered/Buffered.java new file mode 100644 index 0000000..1e3350d --- /dev/null +++ b/Exercises/Testat1/Tutor_Aufgaben/Buffered/Buffered.java @@ -0,0 +1,40 @@ +package Testat1.Tutor_Aufgaben.Buffered; + +import java.io.BufferedWriter; +import java.io.FileWriter; + +public class Buffered { + public static void main(String[] args) { + String[] data = { + "Mondnacht", + "Es war, als hätt' der Himmel", + "Die Erde still geküsst,", + "Dass sie im Blütenschimmer", + "Von ihm nun träumen müsst."}; + int linesNum = data.length; + int wordsNum = 0; + int charsNum = 0; + for (String line : data) { + String[] words = line.split("\\s+"); + wordsNum += words.length; + for (String word : words) { + charsNum += word.length(); + } + } + System.out.println("Anzahl der Wörter: " + wordsNum); + System.out.println("Anzahl der Buchstaben: " + charsNum); + System.out.println("Anzahl der Zeilen: " + linesNum); + } + public void write (String[] lines, String data) { + try(BufferedWriter writer = new BufferedWriter(new FileWriter(data))){ + + for (String line : lines) { + writer.write(line); + writer.newLine(); + } + }catch(Exception e) { + e.printStackTrace(); + } + + } +} diff --git a/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java b/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java index 73a6158..fc6823f 100644 --- a/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java +++ b/Exercises/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.java @@ -6,6 +6,8 @@ import static org.junit.jupiter.api.Assertions.assertNotSame; import org.junit.jupiter.api.Test; +import Lernen.Person; + /** * Test für die Clone-Methoden. */ @@ -20,7 +22,7 @@ public class AlienCloneTest { @Test void testClone() throws CloneNotSupportedException { // TODO: Einkommentieren (strg+shift+c) - Raumanzug r1 = new Raumanzug(); + Raumanzug r1 = new Raumanzug(new Person()); Alien a1 = new Alien("Predator", r1); Alien a2 = (Alien) a1.clone(); diff --git a/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java b/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java index 60720b7..8c7088e 100644 --- a/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java +++ b/Exercises/Testat1/Tutor_Aufgaben/Clone/Raumanzug.java @@ -2,6 +2,8 @@ package Testat1.Tutor_Aufgaben.Clone; import java.io.Serializable; +import Lernen.Person; + /** * Ein Raumanzug. */ @@ -11,12 +13,13 @@ import java.io.Serializable; * Sauerstoffvorrat, der noch im Raumanzug ist. */ private double sauerstoffVorrat; - + private Person person; /** * Ertzeugt einen neuen Raumanzug. */ - public Raumanzug() { + public Raumanzug(Person person) { sauerstoffVorrat = Math.random(); + this.person = person; } /** @@ -27,7 +30,9 @@ import java.io.Serializable; public double getSauerstoffVorrat() { return sauerstoffVorrat; } - + public Person getPerson() { + return person; + } /** * Tankt den Anzug auf. */ @@ -70,8 +75,10 @@ import java.io.Serializable; return Double.doubleToLongBits(sauerstoffVorrat) == Double.doubleToLongBits(other.sauerstoffVorrat); } + public Raumanzug clone() throws CloneNotSupportedException { Raumanzug r = (Raumanzug) super.clone(); + r.person = (Person) this.person.clone(); return r; } diff --git a/Exercises/Testat1/Tutor_Aufgaben/DateFormatter/DateConverter.java b/Exercises/Testat1/Tutor_Aufgaben/DateFormatter/DateConverter.java new file mode 100644 index 0000000..39595a7 --- /dev/null +++ b/Exercises/Testat1/Tutor_Aufgaben/DateFormatter/DateConverter.java @@ -0,0 +1,27 @@ +package Testat1.Tutor_Aufgaben.DateFormatter; + + +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; + +public class DateConverter { + public static String convertDate(String inputDate) { + + DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + + DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + + LocalDate date = LocalDate.parse(inputDate, inputFormatter); + + + String formattedDate = date.format(outputFormatter); + + return formattedDate; + } + + public static void main(String[] args) { + String inputDate = "20.04.2024"; + String convertedDate = convertDate(inputDate); + System.out.println("Konvertiertes Datum: " + convertedDate); + } +} diff --git a/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java b/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java index 9b669cd..105c986 100644 --- a/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java +++ b/Exercises/Testat1/Tutor_Aufgaben/Serialisierung/Main.java @@ -10,22 +10,26 @@ public class Main { public static void main(String[] args) { // Erstelle ein Produkt Product product = new Product("Handy", "ruft an", 299.99); - + Product product2 = new Product("fdfl", "dfd", 34); // Dateiname für die Serialisierung String dateiname = "serializedProduct.xml"; // Serialisierung Main.serialize(product, dateiname); + Main.serialize(product2, dateiname); // Deserialisierung und Ausgabe Product decodedProduct = Main.deserialize(product, dateiname); + Product decodedProduct1 = Main.deserialize(product2, dateiname); System.out.printf("Name: %s\nDes: %s\nPrice: %s", decodedProduct.getName(),decodedProduct.getDescription(),decodedProduct.getPrice()); + System.out.printf("Name: %s\nDes: %s\nPrice: %s", decodedProduct1.getName(),decodedProduct1.getDescription(),decodedProduct1.getPrice()); } // Methode zur Serialisierung eines Produkts public static void serialize (Product product, String dateiname) { try (XMLEncoder encoder = new XMLEncoder(new FileOutputStream(dateiname))){ encoder.writeObject(product); + } catch (IOException e) { e.printStackTrace(); } diff --git a/Lernen/CloneMitArrayList.java b/Lernen/CloneMitArrayList.java new file mode 100644 index 0000000..49cbd18 --- /dev/null +++ b/Lernen/CloneMitArrayList.java @@ -0,0 +1,70 @@ +package Lernen; + +import java.util.ArrayList; + +import Testat1.Tutor_Aufgaben.Clone.Raumanzug; + +class Person1 implements Cloneable { + private String name; + private ArrayList hobbies; + private Raumanzug raumanzug; + + public Person1(String name, ArrayList hobbies, Raumanzug raumanzug) { + this.name = name; + this.hobbies = hobbies; + this.raumanzug = raumanzug; + } + + // Override clone method to provide deep copy + @Override + public Object clone() throws CloneNotSupportedException { + Person1 cloned = (Person1) super.clone(); + // Deep copy the ArrayList + cloned.hobbies = (ArrayList) this.hobbies.clone(); + cloned.raumanzug = (Raumanzug) this.raumanzug.clone(); + return cloned; + } + + public ArrayList getHobbies(){ + return hobbies; + } + public Raumanzug getAnzug() { + return raumanzug; + } + + @Override + public String toString() { + return "Person{" + + "name='" + name + '\'' + + ", hobbies=" + hobbies + + '}'; + } +} + +public class CloneMitArrayList { + public static void main(String[] args) { + ArrayList hobbies = new ArrayList<>(); + hobbies.add("Reading"); + hobbies.add("Swimming"); + + Person1 original = new Person1("Alice", hobbies, new Raumanzug(new Person("amin", "samin", 33))); + + try { + Person1 cloned = (Person1) original.clone(); + + // Modify the hobbies list in the cloned object + cloned.getHobbies().add("Hiking"); + cloned.getAnzug().setSauerstoffVorrat(3.0); + cloned.getAnzug().getPerson().setName("samir"); + System.out.println("Original: " + original); + System.out.println(original.getAnzug().getSauerstoffVorrat()); + System.out.println(original.getAnzug().getPerson().getName()); + System.out.println("Cloned: " + cloned); + System.out.println(cloned.getAnzug().getSauerstoffVorrat()); + System.out.println(cloned.getAnzug().getPerson().getName()); + } catch (CloneNotSupportedException e) { + e.printStackTrace(); + } + } +} + diff --git a/Lernen/DemoSeekMethode.java b/Lernen/DemoSeekMethode.java new file mode 100644 index 0000000..42ce4a6 --- /dev/null +++ b/Lernen/DemoSeekMethode.java @@ -0,0 +1,27 @@ +package Lernen; +import java.io.*; +import java.util.Arrays; +public class DemoSeekMethode { + public static void main(String[] args) { + // Datei erstellen und Daten schreiben + try (RandomAccessFile file = new RandomAccessFile("example.txt", "rw")) { + // Daten in die Datei schreiben + file.writeBytes("Dies ist ein Beispieltext."); + int laenge = "Dies ist ein Beispieltext.".length(); + System.out.println(laenge); + // Den Dateizeiger (Cursor) auf eine bestimmte Position setzen + file.seek(0); // Cursor auf die 11. Position setzen (Positionen beginnen bei 0) + + // Daten lesen + byte[] buffer = new byte[26]; // Puffer zum Lesen der Daten + file.read(buffer); // Daten von der aktuellen Position in den Puffer lesen + + // Daten in eine Zeichenkette konvertieren und ausgeben + String text = new String(buffer); + System.out.println(text); + System.out.println(file.length()); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/Lernen/ObjectInputOutputStreamEx.java b/Lernen/ObjectInputOutputStreamEx.java index 23a3457..f9d0c2d 100644 --- a/Lernen/ObjectInputOutputStreamEx.java +++ b/Lernen/ObjectInputOutputStreamEx.java @@ -11,7 +11,7 @@ public class ObjectInputOutputStreamEx { public static void main(String[] args) { String DateiName = "test1.txt"; - Alien a1 = new Alien ("sfei", new Raumanzug()); + Alien a1 = new Alien ("sfei", new Raumanzug(new Person())); Alien a2 = a1; Raumanzug r1 = a1.getAnzug(); diff --git a/Lernen/Person.java b/Lernen/Person.java index f33ff29..76beee4 100644 --- a/Lernen/Person.java +++ b/Lernen/Person.java @@ -1,6 +1,6 @@ package Lernen; -public class Person { +public class Person implements Cloneable{ private String name; private String vorname; private int alter; @@ -32,7 +32,10 @@ public class Person { public int getAlter() { return alter; } - + public Person clone() throws CloneNotSupportedException{ + Person p = (Person) super.clone(); + return p; + } public void setAlter(int alter) { this.alter = alter; } diff --git a/Lernen/Test.java b/Lernen/Test.java index 85552cf..db08768 100644 --- a/Lernen/Test.java +++ b/Lernen/Test.java @@ -6,17 +6,17 @@ import Testat1.Tutor_Aufgaben.Clone.Raumanzug; public class Test { public static void main(String[] args) throws CloneNotSupportedException { - Alien a1 = new Alien("Sirat", new Raumanzug()); - Raumanzug r = a1.getAnzug(); - r.auftanken(); - System.out.println(r); + Alien a1 = new Alien("Sirat", new Raumanzug(new Person())); + Raumanzug r1 = a1.getAnzug(); + r1.auftanken(); + System.out.println(r1); System.out.println(a1.toString()); Alien a2 = a1.clone(); Raumanzug r2 = a2.getAnzug(); r2.setSauerstoffVorrat(2); - System.out.println(a2.getAnzug()); - System.out.println(r); + System.out.println(r2); + System.out.println(r1); System.out.println(a2.toString()); } diff --git a/Lernen/WordCounter.java b/Lernen/WordCounter.java new file mode 100644 index 0000000..a3fe0c6 --- /dev/null +++ b/Lernen/WordCounter.java @@ -0,0 +1,95 @@ +package Lernen; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.IOException; +import java.util.*; + +public class WordCounter { + public static void main(String[] args) { + // Dateipfad zur gedichte.txt + String filePath = "gedichte.txt"; + + // TreeMap zur Speicherung der Wörter und ihrer Häufigkeiten + TreeMap wordCountMap = new TreeMap<>(); + + // Zähle die Wörter in der Datei und finde das längste Wort + int longestWordLength = countWords(filePath, wordCountMap); + + // Sortiere die TreeMap nach den Häufigkeiten + List> sortedWordList = new ArrayList<>(wordCountMap.entrySet()); + sortedWordList.sort(Map.Entry.comparingByValue(Collections.reverseOrder())); + + // Gib die Wörter und ihre Häufigkeiten aus + System.out.println("Wortauflistung:"); + for (Map.Entry entry : sortedWordList) { + System.out.println("'" + entry.getKey() + "' kommt " + entry.getValue() + "-mal vor"); + } + + // Gib die Anzahl der verschiedenen Wörter aus + System.out.println("Es sind " + wordCountMap.size() + " verschiedene Worte"); + + // Gib das häufigste Wort aus + System.out.println("Das häufigste Wort ist '" + sortedWordList.get(0).getKey() + "', es kommt " + + sortedWordList.get(0).getValue() + "-mal vor"); + + // Gib das längste Wort aus + System.out.println("Das längste Wort hat eine Länge von " + longestWordLength + " Zeichen"); + } + + public static int countWords(String filePath, TreeMap wordCountMap) { + int longestWordLength = Integer.MIN_VALUE; // Initialisiere mit dem kleinsten möglichen Wert + + try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) { + String line; + while ((line = reader.readLine()) != null) { + String[] words = line.split("\\s+"); + for (String word : words) { + word = word.toLowerCase().replaceAll("[^a-zA-ZäöüÄÖÜß]", ""); // Entferne Sonderzeichen + if (!word.isEmpty()) { + wordCountMap.put(word, wordCountMap.getOrDefault(word, 0) + 1); + longestWordLength = Math.max(longestWordLength, word.length()); // Aktualisiere die maximale Wortlänge + } + } + } + } catch (IOException e) { + e.printStackTrace(); + } + + return longestWordLength; + } +} +//Ohne Sortierung +//Dateipfad zur gedichte.txt +/*String filePath = "gedichte.txt"; + +// HashMap zur Speicherung der Wörter und ihrer Häufigkeiten +HashMap wordCountMap = new HashMap<>(); + +// Zähle die Wörter in der Datei und finde das längste Wort +int longestWordLength = countWords(filePath, wordCountMap); + +// Gib die Wörter und ihre Häufigkeiten aus +System.out.println("Wortauflistung:"); +for (String word : wordCountMap.keySet()) { + int count = wordCountMap.get(word); + System.out.println("'" + word + "' kommt " + count + "-mal vor"); +} + +// Gib die Anzahl der verschiedenen Wörter aus +System.out.println("Es sind " + wordCountMap.size() + " verschiedene Worte"); + +// Gib das häufigste Wort aus +String mostFrequentWord = ""; +int maxFrequency = 0; +for (String word : wordCountMap.keySet()) { + int count = wordCountMap.get(word); + if (count > maxFrequency) { + maxFrequency = count; + mostFrequentWord = word; + } +} +System.out.println("Das häufigste Wort ist '" + mostFrequentWord + "', es kommt " + maxFrequency + "-mal vor"); + +// Gib das längste Wort aus +System.out.println("Das längste Wort hat eine Länge von " + longestWordLength + " Zeichen");*/ \ No newline at end of file diff --git a/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java b/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java index cc682be..614f1a2 100644 --- a/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java +++ b/Moodle_Uebungen/Uebung3_Buchungen/Buchung.java @@ -1,15 +1,15 @@ package Uebung3_Buchungen; -import java.util.Date; +import java.time.LocalDate; public class Buchung { int buchungsnummer; - Date Buchungsdatum; + LocalDate Buchungsdatum; String buchungskonto; private double buchungsbetrag; - private Buchung(int buchungsnummer, Date buchungsdatum, String buchungskonto, double buchungsbetrag) { + public Buchung(int buchungsnummer, LocalDate buchungsdatum, String buchungskonto, double buchungsbetrag) { this.buchungsnummer = buchungsnummer; Buchungsdatum = buchungsdatum; this.buchungskonto = buchungskonto; diff --git a/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java b/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java index 88000d3..660034b 100644 --- a/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java +++ b/Moodle_Uebungen/Uebung3_Buchungen/BuchungenAufgabe.java @@ -1,40 +1,47 @@ package Uebung3_Buchungen; import java.io.BufferedReader; +import java.io.FileNotFoundException; import java.io.FileReader; +import java.io.IOException; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Arrays; -import java.util.Date; -import java.util.List; public class BuchungenAufgabe { - public static void main(String[] args) { + public static void main(String[] args) throws FileNotFoundException, IOException { + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + ArrayList under1000 = new ArrayList<>(); + ArrayList over1000 = new ArrayList<>(); - ArrayList overEqual100 = new ArrayList<>(); - ArrayList lessEqual100 = new ArrayList<>(); - String dateiName = "buchungen.text"; - try (BufferedReader reader = new BufferedReader(new FileReader(dateiName))){ + try(BufferedReader reader = new BufferedReader(new FileReader("buchungen2.text"))){ String line; - while (( line = reader.readLine()) != null) { -// String[] split1 = line.split("\""); -// String [] split2 = split1[0].split(" "); -// String [] zsm = {split2[0], split2[1], split1[1], split1[2]}; - // Buchung buchung = new Buchung("..."); - ArrayList data = splitIgnoringQuotes(line); - if (Double.parseDouble(data.get(3)) < 1000) { - lessEqual100.add(data); - }else { - overEqual100.add(data); + while((line = reader.readLine()) != null){ + String[] parts = line.split("\""); + String[] numsParts = parts[0].split("\\s+"); + int bnummer = Integer.parseInt(numsParts[0]); + LocalDate date = LocalDate.parse(numsParts[1], formatter); + String name = parts[2]; + double value = Double.parseDouble(parts[2]); + + if(value >= 1000.00) { + over1000.add(new Buchung(bnummer, date, name, value)); + }else if(value < 1000.00) { + under1000.add(new Buchung(bnummer, date, name, value)); } } - - - } catch (Exception e) { - e.printStackTrace(); - } - for (ArrayList arrayList : lessEqual100) { - System.out.println(arrayList.toString()); + double gesammtSumme = 0.0; + for ( Buchung buchung : under1000) { + System.out.println(buchung.toString()); + gesammtSumme += buchung.getBuchungsbetrag(); + } + for ( Buchung buchung : over1000) { + System.out.println(buchung.toString()); + gesammtSumme += buchung.getBuchungsbetrag(); + } + System.out.println("Gesammte Summe: " + gesammtSumme); } } public static ArrayList splitIgnoringQuotes(String input) { diff --git a/Moodle_Uebungen/Uebung3_Buchungen/Reader.java b/Moodle_Uebungen/Uebung3_Buchungen/Reader.java deleted file mode 100644 index 7de6bf3..0000000 --- a/Moodle_Uebungen/Uebung3_Buchungen/Reader.java +++ /dev/null @@ -1,63 +0,0 @@ -package Uebung3_Buchungen; - -import java.io.BufferedReader; -import java.io.FileReader; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; - -public class Reader { - - public static void main(String[] args) { - int buchungsnummer; - Date Buchungsdatum; - String buchungskonto; - double buchungsbetrag; - ArrayList overEqual100 = new ArrayList<>(); - ArrayList lessEqual100 = new ArrayList<>(); - String dateiName = "buchungen.text"; - try (BufferedReader reader = new BufferedReader(new FileReader(dateiName))){ - String line; - while (( line = reader.readLine()) != null) { - ArrayList data = splitIgnoringQuotes(line); - if (Double.parseDouble(data.get(3)) < 1000) { - lessEqual100.add(data); - }else { - overEqual100.add(data); - } - } - - - } catch (Exception e) { - e.printStackTrace(); - } - for (ArrayList arrayList : lessEqual100) { - System.out.println(arrayList.toString()); - } - } - public static ArrayList splitIgnoringQuotes(String input) { - ArrayList parts = new ArrayList<>(); - StringBuilder sb = new StringBuilder(); - boolean insideQuotes = false; - - for (char c : input.toCharArray()) { - if (c == '\"') { - insideQuotes = !insideQuotes; - } else if (c == ' ' && !insideQuotes) { - parts.add(sb.toString()); - sb.setLength(0); - } else { - sb.append(c); - } - } - - if (sb.length() > 0) { - parts.add(sb.toString()); - } - - return parts; - } -} - - diff --git a/bin/.gitignore b/bin/.gitignore index 871ad7d..12d5e95 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -1,2 +1,8 @@ /Uebung2_IO/ /Testat1/ +/Lernen/ +/Uebung3_Buchungen/ +/example.txt +/buchungen2.text +/serializedProduct.xml +/gedichte.txt diff --git a/bin/Lernen/ObjectInputOutputStreamEx.class b/bin/Lernen/ObjectInputOutputStreamEx.class index 4627cac6ddd9d0d8711c24ba1a791ec4d0792a67..0b7e40fc7c3b2187d4f9efa9cef9d761f5ad04ba 100644 GIT binary patch delta 638 zcmZ9JOHUI~6vuzJ?aVF1RADf+Qv`gKhk#X4!J%kD1Rv$0ph*)K7BdQ_wx)nC2*Kz_ zn1zWOSB5n)X%icDr-@s4ehSwv#MACH_vW7a&;OBg?tN?ju&wWZK7IzWEbmzvHK}nG zv7BEi`K9!tUs*4gEE2R>#5rPP(4}ztbN>j&2ku!o^fc(B!Cf_N9=AEc$>5#xRB!N8 zC42i7i6@2Uh4flEJ+oHy7dAJZZEh@WRQ$qIi#|>@yn{h9l#HerZh+H4Ce$t9jLlij z1uLQckrd}`E?_E*hsE-`Z!yXx&6uL2nO!WD9;cUAE9Do3m7;IsF&=yh4Vx2O(OeFG zg%T?Jp(PwqktxmXpgr>eyGYZFQPm{ zd1jrI@O}Bg8Ur=Blhv&>091KgK|yyBLu31KWjy|l;~6Lf%14$?)NC>(Khh%e4Ihk1od ztEjHaWHJ|%Oi2y%lB-Ok#J9>dW(bM<(H66E4NJ%aG29>`Q9az`mYBEY6LQjw!Mp^_ tqW1+vH4BDla=4i|tFi@t?Gzm@uV-I}#US=`V)HZBYOK delta 550 zcmZ9JO;1x%5Qd*~+tYKo+zPpn>aEb$s(@0gQa{S2D4!x)V55u1jg?fuG_6sBUnDO5 z0oTODKj4~}w24i0=fa)whq!kkPMf$fGdXkKnRnhfA3xm>uJirR=P$rKn}<$G4LBs| zbMQ#IXikQ2)pBgqB}F>?p#pU(bgiU19gbV0c9yeU&RAHsl6HoPE;tu9tdxLBmmE{! zJ8PnlA@6dLm_l#Wo6l+v(_A(b6hn`z`_+8C+StzD-Fe!4UVT`vxm@9D_{*9~7YPhA z|5&@t{MzQqi>=y|z1?QRW%ko-B&wowhH|(ReSd#jhTC$F18=b0!K-+~9TJr`C))Vy zxs6$ zi))8OC@{lK8JFdr7>uwdR+Ne(XpBBt_|r+k{mOwu;X>xUgXO?eYE0_eqXF_ z@iVLI4zmou?A6<&P`KlujEbBV9E>KXB?mUfh<~EveN$c4tq(__LI28NE+?lHXEQ|m zN(7tc*Ov;v>?ER42g*|Hh^PwF%r#h&{q|Ew_hLT``enEZYnj-l75ia)c;4%UQLK-z zO-0j&gEed@+%6z#Dy33Ag$k)s5X+@1Hnn&vZtKK949}yEe&HJ zTni#0C#oO3L^&;nF7*adSEa4G99 zmeb4`_BYhN(5Qe6dpZ|;1@}_tZCXpIiY$H}P-Hb1gu}!NAJNugkjJK_Z+H@IY__!i8>+RD z6_x0-#?75POOD&8;sT^b zNL=s$JQU*W+O3tuz1f+aojLRE%-?^%{{VQ0;|2_Y)<~wYjEA3PI#1#TEP<_y;5rya zK|C9Nnq0_fCSb+Er4-m1l~3nc8pg9X0*&h=&7W&Ql*v>;oC?(6hH;pk2$+6$*#V?&axgk?T?!f z=(?z(uDpjX8o9UU!bX$$Gnt*~-*x={x&jmCw+Y>fp6YWBCC0ZyaF~8~vH9{o9}4Hd zvDkbq0+vrY7M~|q=~R9U)eJWBHM~}1#vyr4uF8a=@aY)}UR$Em+RWfIdAhs}X$5U< z@C&Vo;;n-8*zVvS5VcaZxTkvI%Zt3h?)R06 f99Dun!}GO?>@Te@pU4qGj_(0ct5F~?bjPFrS7D5& diff --git a/bin/Lernen/Test.class b/bin/Lernen/Test.class index 356f581ad851c365dda5a974d6fa53fee7087e87..32f415fe49932678db5ab902746593b043d12da0 100644 GIT binary patch delta 511 zcmY+A%}x_x6o#K~TBqssBVr3eRg?na@aJGf5ekS1qB6xM5Rz^%vly}d49PH>uySGI z4Saj!6_~)HO>Dx}#Cz~ojHkjvHs|EL?|a_!^Tj!FoL_%_oB+$zj+}~ml;Mh^%Mary zjJ#SHAM8gCMY0Zk3}`NJU6FVFbArm)jzfXL4qY`sgzq&|+&0=8EKO6+a7R)2Cu!_^wYU)_TS*)S zqPokBsam7`Nzgt#c@b+gDN*2q(p yCvVfkE|E9qN{HCZaUi<|ia$@NK delta 455 zcmYk1&rVul5XFDr<&WX|H412nwzguaMbLt1Z55^dp|n)3CMG7hyNPJ2iV0p#T)8mu z1-{4ViY_3ji4V|K6E`k>jc$wscHw4D=A1KUX0GfD+x~O+`wEz6xo&4wmraC#O_*mI zAJ5H&%KKkvUNUI@s@cqt<`sTLz&YM=o$6k>8sIf=Iv7@T|8P#6)V@>QO>LYWx#a^* zoDq|=2BS&FIv7=i+m^~j%>Cr{Ggd;#{9E#{+#9`^JdQT-KT1bxVcqvbL}}lyOAe+^4``Z;Zmsgl1QmZ zUz7foWP^d#(FW09!~_xoLZur_3cUX|Ci0B8&)Y+`!JLRK;=%UcEkw&*mvjqTY6dMe zKv24;bkdLBCdw0%bdjc;DUou7_#(%z(LzSzu8Df)rUIj}kS{CkhguCc$Uv RJdzQU`2t?ii|y54?*VJTRgM4v diff --git a/bin/Testat1/Aufgabe2/Employee.class b/bin/Testat1/Aufgabe2/Employee.class index 72b417972dbf1599ecd611d722b3e4533c5b1341..95ed9a41a0660cd04e7c133406440008e49f125e 100644 GIT binary patch delta 23 ecmaFE@tR}97bb3QMjeIX#GJ&UO507$Ig9{jxd+?; delta 25 gcmaFO@rGl=7bYGaMjeIX#GJ&UN?V1^|Cw?a0eZd&{Qv*} diff --git a/bin/Testat1/Aufgabe2/Main.class b/bin/Testat1/Aufgabe2/Main.class index 9ac376562a0ef952233c6ae70355ea1e1360b44f..381f32dcecff71caf8fa7f9293b11babf3f8907c 100644 GIT binary patch literal 3914 zcma)9Yjjjs75)x0lY8gpk`8&1fi^q}lJ`Kc2$P771T>HbGAT3^wU?Qj+nM zv!CDI`^;*bRe@*jCDRH8j$w^6mjAZ5Qb}ngllOKV!Q|$FsfIGRtyyHkYQe z4Ol0gUC+?9tYn;lI@~2WnrUN+gLV|P(0Cmi1&maxYiOuzn*R)J#ug2C3v5RqlI}q;k6rRLx+a; zii{V7ZK4xh0wFJ#c9{NcE9qJxMFzH`Tf>fWmXsk12+|`HJMmTu%~`HTgd~;<-8X5u z3H#x^ok`j~x8p_Y5~f8BJqC7Rw}!U~tWiN#ARfs0_JoY#9>fK7rJl4~ByvE8rPsvU zLAYzKol9FuTHDyNZ(m8L5?TVK!Ge0HhQ5jz_Gk0Nyor727pPYHilkep?ALLCHFnr` zy=+FRf47MN93+VmvC^!V3dj|UvZwX9hCvq7GQ^hU9Kx`~s+avbUeUZ?Vrk} zv(vV%;k^RUWopaY22SApQtyKTowu)-&gwWx=SFQSIVpQYY9;4Ny9ScDUsm~qiAgxL z&ShtjeMX?ZWkqb%;UN=g*&sv7bk<`R$sng8Tdofk`q4=@`-p6kCLV?>u$nPXk}w6snZnb}bc_&BX0UmWdMC5(pgaeP9<;}zwR znD%^o%ETvemI%w{WhE9Nz4USOU}Sk_^gJ{l)bJzW8!Jq zqBZ4pIwS4>oQcol3#3h2-mo&2L+rSYFR^y|^KNp|OHOjQ`JR=g+wqNCJ;Q*&S4=#M zbJUVr!gItXug!RslTtZ{dRqHsL-?wRui@*|c-l(m?U8X=zx_)AQtSrw?ac50&J77)l zDF#UJoJZv+o37^N%QqLM)pDmPb=$(` zbgq26*n47OSLx$~?f1!$u?jfrBKWsojYO7+x8)Uy*2r67mz<^8 z#G(lB1_?gNjVeAhu3~%(zC&%Z&@b_06%0P*HuzP|r&(m+do@>K)Zh+McsTH9azp^} z%se7vv%EEmAu&9Uy0LjQjMc84MRXQ-#)H9KRka)Duqm$1;Ejf=bNEX%RJ*N!*0>(k zgWXYW4zYMRs)xGcMpUorp2I!6s-wEr9qEX470@$>ckD5vdZ4>@e*y10hjs1qI5ZXw zM~#N+CUX`;1spy$gU1z1La}U)>Uwv)hK%2Wkz!1!1^bbTQb4PL`exjr?6_93~_)vDv_ zaL0A%okKHN-O>3R^p4H~raG<;brj&W7jR~H25UQCzy}3h#-X9-@iA^ZQNX83dq&{= z!rw`%{bKM60%L*pIed8z=jr}8j$LAsn?R z60T9^UvW47hAnu5SKfc|(yO6O)S*^1qeG0KQzQ@*Hnxi_-)GP*p60DmV(iD%PaNSp zxS(u(0^h}RL|LOUxd*S)stfe2 zAFtpden!L|q cl?JFZ)FW8U2!*9j5!t8cQH1CIsC;?-|CD6e2mk;8 delta 105 zcmX>l*UHRw>ff$?3=9ko3?dV`c5*Q?up}0x7c(*lPYz@fo~+KL!pJn)hf9l*d2%_I poH>IwP$?q_Zv+xd3|v5x4J^RMzzt;cKqMIi7z9Cz7=*y8gaKF+4e$T} diff --git a/bin/Testat1/Aufgabe2/Person.class b/bin/Testat1/Aufgabe2/Person.class index 0b90546cea4e1d1ac8f263806aca630874f36b40..703a01230c975d2fb3695903f2c90568aff6767a 100644 GIT binary patch delta 437 zcmZWlO-lk%6g_uFXNGB@$f6{ZJ~SOG?ZeWVJ}mprf@l-eW)>#KD3Q{(AMx6>@i!EN zgbR0VTGcP;9|Zk@=&C_di~G*G_uO+H@749s4*lh;RtJ#6!GrG5jf@ckqX-bRT(+Ec z>{5x~37eS<``V5mbk6HdNN2!-3OYpq!3>Hk?Ha@If`bK;f~O2R-A3*wD@lo1~k6eOK1 zDXgnl69vhXlSqp@siLiF*dl(S*pTC{T|!V)q@bc=pWtWe7tiwR$q`f#e@rM+#c&nD zZpI1sOym)sCp4g!tB=cD!#r@$s}ctIRGPLP_?R252n@o{9bplccy|S?{x;S9qsmxn YW-MccQRD3mu1#!nr!(8Z9y0KL19&=C_y7O^ delta 255 zcmey!y^o9Q)W2Q(7#J8F80gOcprRxWm6lLb6^Dw9~ zs7=;kGH27^VbEmInw-fb!(^o~IgeR(@;0VuHbVwub_S!#;>?;HnhYk43^O!*CM&Y2 zPR?a6;Wgl3FlS`Y3`i|1&d;0tlG%jOYO)-Q7K;rdgB(zi+~h2l3-ZnkYz&M*mq==D zVG!QIpa`Tyfmj@fC3i8XPfll*zjZ^ceJkGzU=56o}0jEPy;NAj^`$n!%Pq5&$shEx7;y diff --git a/bin/Testat1/Aufgabe2/Teacher.class b/bin/Testat1/Aufgabe2/Teacher.class index 468bc1e21586d72fbd12f27a5cff40b85922ee9f..1b492f67c86dc5fe931363c62adfc4a563812d63 100644 GIT binary patch delta 22 dcmZqWY~$P@$jr&fsH2dUn4Dp|S&})25db|O1xx?{ delta 21 ccmZqUY~|b_$jrgPsH2dUn4Ga$iaCc705{164gdfE diff --git a/bin/Testat1/Aufgabe2/people b/bin/Testat1/Aufgabe2/people index 6adfbfb..25434f0 100644 --- a/bin/Testat1/Aufgabe2/people +++ b/bin/Testat1/Aufgabe2/people @@ -1,6 +1,6 @@ -Person 15.05.2017 Max 25 1.75 +Person 15.05.2017 Max 25 1.75 xxxxxxxxxxxxxxxxxxxx -Student 12.09.2020 Lisa 20 1.60 Physics +Student 12.09.2020 Lisa 20 1.60 Physics xxxxxxxxxxxxxxxxxxxx Employee 04.04.2010 John 30 1.80 50000 yyyyyyyyyyyyyyyyyyyy diff --git a/bin/Testat1/Tutor_Aufgaben/Aufgabenstellungen b/bin/Testat1/Tutor_Aufgaben/Aufgabenstellungen index 57fc806..7952884 100644 --- a/bin/Testat1/Tutor_Aufgaben/Aufgabenstellungen +++ b/bin/Testat1/Tutor_Aufgaben/Aufgabenstellungen @@ -13,9 +13,11 @@ Testen Sie, ob Ihre Implementierung korrekt funktioniert, indem Sie die vorhande Damit die Tests laufen können, müssen Sie die Kommentarzeichen entfernen. 3. BufferedWriter/Reader: -Schreiben Sie die Datei Mondnacht.txt per BufferedWriter in Java und Lesen Sie die Datei Mondnacht.txt zeilenweise ein und geben +Schreiben Sie die Datei Mondnacht.txt per BufferedWriter in Java und +Lesen Sie die Datei Mondnacht.txt zeilenweise ein und geben Sie die Zeilen mit einer fortlaufenden Zeilennummer wieder aus. -Dazu soll noch die Anzahl der Wörter, Buchstaben und Zeilen am Ende ausgegeben werden. Verwenden Sie hierzu einen BufferedReader. +Dazu soll noch die Anzahl der Wörter, Buchstaben und Zeilen am Ende ausgegeben werden. +Verwenden Sie hierzu einen BufferedReader. 4. Serialisierung: Serialisieren Sie die Klasse Produkt und testen Sie ob die Serialisierung funktioniert hat. diff --git a/bin/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.class b/bin/Testat1/Tutor_Aufgaben/Clone/AlienCloneTest.class index 797307013000a0c02cee7592e7cac049517cf77b..ced52887ff3245851ba50b0f6dde7137664ba4cf 100644 GIT binary patch delta 424 zcmY+APcH*e6vcmUI&_RFNz;^8tNym=R9h5j>pziDVnfnp6SI>xrmO|uz7~0*`lTTp_lVScMC)BfyToce67}$Sw#&qc-C_DP*CA8Z?c6KbY)lvQY4Mj9 zvmI7qx9gj#B1gxCUtQUt^nl#90lO4Owiw=7L`;fjRl+Qc_7eG(P|k;H{7 z<2(2cK7n!2&6hK0{yFo{%zQG<&!5*fpi6gT4wRTlg2gC~g8RJeItD2P<7#+&bA3M; zn%JyaERYGml~coJ-C~1W7^n>?@)nyE!Ur{olqg5p3SZQMwv88lscoY~#iA-jPK!r& zEo#)mKr4yAKlcy9JMBZU!n(fq_)bK2!1;_sf5Pg;47eq~D0 zOX|Y8^#7#qjoC@+f&`5zdn3tFF@<$3p^bq>wrWPC{~gEog8p-4!LfR@BN_~N$EB&tY9y1Mj_<+aMmFEsZw^8f$< diff --git a/bin/Testat1/Tutor_Aufgaben/Clone/Raumanzug.class b/bin/Testat1/Tutor_Aufgaben/Clone/Raumanzug.class index a6ef24624382704436991d6d03c6ea98daf06693..57ed5877febb62525b18ee381ccc364336e92e42 100644 GIT binary patch literal 2365 zcma)6TW=Fb6#gc@#+bw;BoIhRxH~rB(n5iTP;%iCaJV@QEwqJ+Gl`ctJMMZG6{J4( zr9Yq#74NP35UH(HDB_{&Tc!S{s_HkpOKgXzLY8-D&z$p}?>pzr{Qd8%KLA|BQVLxH zN9I-2NOQ6@?;GtsnDm!dU8*S0k#*;(-62X-`pRn>y}Z1jJx>||F(Z&{(5PL3-f~%a zE-Bm!4CCB7@3@Y+AkdfJv^TaO5TDjdDuWnyWU(E60t zVK*T?=`QKDz9#MhQGF`y!nuMUs+dWeL+$Ul|;t4sX0x7 zeEIDPNjd#1%2eK{K{u_TVu2m`u}wk+x~0Etq`RtEqWAaLK-_Ew z1sqGE*wMZj?NdP($8m!8rQmB`m$kbxu7H4setSE1~E}L}jr@EGRU}RNddhroE+_n?pkcKuj zFy84+*UsYAZINEKdFePxPoeJS@XjAbU4ec4VwBc%% z%w%x^mpIlP^dpiPT)}J#S4pyCdTq=>7K`lDMpumIxGS3>LhE=RPvwm)ZsL}}t~I%; zrnOs@=B{JdO_zt%wVfGYXWD8M#b!9ScWkbY1Tq!vdsTJWv4^c^;{>0uI@#$Tk#q zio$Ggvd~LOEj5{db)E^w+7OZ(=?~*bgm8ffu>j%d76`|PaJ;P!uMw;`TX0MLDDn}O zp*2CQ;oQji_=GLSON>qBMuuzq_vc2x{^r|<6T|Bp3I_vUtKc+OXV|W@*n@LHwnEU2 z;fQYxLnz^0W=XIsC%NjPcQ4+<`+@#bL-i0;hXZUow=ZyeGYro$Rahl4RD#t!KIS{kp!@uPhA;SK=jQ<=su=nYrvB#r delta 1098 zcmZXT%TH556vn^leY9MzrSd36Y6}9k+=At;Xv?#Jf+#AYuA~Mc7=#4DooUdGJ7dNL zackU>sEHzyXk7bGu=B4l#&2$~fVi2NbLX7j`OcYhzn1TXtRKI3zX2G)otM^&>CEEt z;#!}8mTaC8(1%y%<}GL_vr!7$!f{miQ7#aCkbj&{FXfl-rzi7k3pOfIC19@Rm*-X< zy3x532vplBfh7}SRelk@u?95x(I^l)h|aC7-&>luaT*C3^4&GtY_y|8uKPB{1sT** zX4b}8^vQm$T0YVobJ#`>Bl3;bV~(ktb8=7XG%w?dACoeoH~VwADzKT98+t^}>QD8F z0ItiQdWX0vYYa!fB@mNQBPQpKa6!PQ^s#y+mIZP>Myrn%3+}e_89`?Up-%{ZpzTA1 zYmm1r*MGVjY1C56W<~|{YxR+nmqV$?h;wXXnksu=JBEl~6FMD(-^3R!;_EhWk{jL?LaHeC<$`IA1$O)+ep8Kp>3tULri)qT8d&`y@sK0X-b6V zzLw*@Z-(3~{OIS44UjyE1WdWG;xKx!(4hK%{u9^a!qr%AWArFSxEQ5f!$nu~ YC5&?qFlefh%Qf7fY4J3T8QezAADM)8m;e9( diff --git a/bin/Testat1/Tutor_Aufgaben/Serialisierung/Main.class b/bin/Testat1/Tutor_Aufgaben/Serialisierung/Main.class index 4744fc0dfe065e9fe1bad8638b8efa68269d7795..c783b1d986c5e42e279f03e40e0ec27ad77633d3 100644 GIT binary patch delta 1382 zcmY*Z-*XyO6#f?W2W+;6p-Bp9OG-^s0=prlO{=7>sU~VH&`?YQG5#R1L>dYy5KOE} z)l_YKab_R;;DdJZYJ4Caqoz;ojQ@b+v;TzSSnIhr*h%-Y_ug~QckVggckl8?*W+&W zw|{^76~Gw2-coM}y<#C>C^_I0V9yuw^4KNv(c{2zYfU&J_iH$T0qd?XD+e?TB53_3 z-1g}hQeX&hUCTDI;ZnA|7*4I#>gII~VGLV$ZO4R&^|Q?{pV2Uav(}%s6IWl*@FLC% zcy7_GkDIkzwYXd_R>~?|7}and7X&!SHB~L~s)h8$!8Qm#~~nJP>yDkxYNB#-@l6s@#m^ey4Kg3>-F zlUF8Ib0$|wL)rRXDjZsQMhjv|xfOh1`Q=_=%{nh1iL4^6qJfWCB_9j$v}+|{Cd8k%}z!|Ha{7aeniN9O8y1*jNL1?a5|L{*?2CMk=Pi$kBg}m#%K5A zq&BWe6Aq;DDR7I*u|cIi$a@W)H~=5@ez-A!g9xDq5gek6=0O%-+(9oo2!C;p3f{nF zvN~}SF~lKIYzYaP*=UC%u3!pwiccfiq(zaoN#ZKaBskeuKmiJc|3kJ!V^W9V{u7Nh^{NqtYDeE zF?w&HN_1=FAA$0Oa!CqY3hD|>{!2li@z~!`>C-cv&L_m$wg+LJC6TmXe*?PH+iVc^ zRYv{8ZQP7XUOKE#9>5j%N)K_4S)XkpoM4uNTgGlwG#*)Y8Vb z;~(JM_u3i9;jJ_DA#utm&N!o^Pd@5{|AJ3_>a?ZjZu~LLP43Ov^S$Ss&pmhl3B732 zpZ@#DeE>)C^M-y!=nO5{B_~&KuGw>`QgLoMUmjdtDCiK-VPF?JSxuNycN^G)y{t*R zq4uCx!#;LP3`u?HXEm`?FxhjlOC2;2#Sq&TyU%`LU>HLJ-k-P2WA;+M%Awh=!Pez@^+uE?UUB^U<;5^7(>o;6r@GR;0b^C-_vu zQTD6UDjmadwkh3ajyxo3m|(xjZ9;S$H5A#j+SY$XK#P}vww`nf_PD#aTqcQ~ThOtHlnxhV zUh^{hMUD7eTs5$YZ`nh&r@_Uvjx}Du_v}ygK?S#27}8!>{DI7Rm*i2e8s;}j->9-O9U68!uMkxwJ#-$bR*nidj5 zauf0FCKB0!8qU;kHYSJV{wh8X%a1S|maE9FV<5pTpJ$m{N%Jv$R$?9RnbsZnOsiVK zjJcICt2nKkyvud};^*!LE`p@GBGds#o80Owzm>CulAL&Q)20q=L+NB{r; diff --git a/bin/Uebung3_Buchungen/Buchung.class b/bin/Uebung3_Buchungen/Buchung.class index 7720b4a5e7a7037db3664a811c2d3154df230eea..9a8a2ff65383baf7ff404dcb7b1b2c0819ce297d 100644 GIT binary patch delta 58 zcmeC?naVREO;FS)E3qt5za%p^Ro^E+IWcEqk(aQJh9|o4##5`985uX1vP@$H07+C7 A3jhEB delta 56 zcmbQr)6Fv>jYq&IE3qt5zqBMXM}K0umyo)KCz6OuVoB;`MP}iRuO~AzGHtGBnZ^hJ D6z~$I diff --git a/bin/Uebung3_Buchungen/BuchungenAufgabe.class b/bin/Uebung3_Buchungen/BuchungenAufgabe.class index 10539c760d4adb6024104efa13b2868071b34daf..7df7d5605af6722d1d89054d625ece5cac9e6db1 100644 GIT binary patch literal 4291 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 F{|o1LLumj2 literal 2887 zcma)8>vI!T6#w03lTE@F0wvJ!Py~dgEiFhzNTC+Ot6C~hUIh`h>5?v_o3Pnn5fmTz ze&G8x4uc<@eic6ygc13oILcfT#MId%kKcjc%bSvBW#PCTY;|PQ{ znwIJG2n1S^2LzOKe#D3(fQW`5LISh;P0JW4jSU<2K7BZ62+ZlvXY||w-8SXg7b?!E zSrk~_|KE{x^OP~&v;^k09O=Io(V%0SR<=8NK*elLcn7Pi)wymG-H;YabF+{?c zD=>4ol4yrxj5{jk(VJ^w=9&756NYV!>^1Ze!&cGEm@9kR&79%MqnM8cGRcJk@s{c0 zh$4=~QsX{`<7?2pXU;gI5Llw&0W9Tyv5+&JzO0p(N$e@*9fRdaPUqJiOR#PTSZG9j9$^AXhpk93pDch!BU}M8^xl*K$>eST2*$zNMoCdt##hE zjc1I4W9BUl+g&mjh>kPp=$TXdY(2veV%Vvn505bc(=lw_$=i~begZB?eZIVV2Kq6e zVpoMub-Nm#z-}_zA|0oez%N(?d$CW&U>!<>XN!(8reQyL`vUorMBam)RNL)^%hHay z3^}A>$St;$uK<4pM^!vo$-3S~!&8#os+)DrlJOtcpktV_QN1|ehRSr9B3@!_MZ@VgtgJICHTq;X8^_BUUcswGMlTc$ ziy16xN&oXM`^S=z<9J=e8+elzIo}uQ)W;icS_MhvAlr^ZUNscSxrA5en!;5)kvpbU zG)Ig|;}oQ%$nZa{;vYp3Vb&tXUlZ4@e6B(>x@fZl3ow9%*n>qlM0th)T)|R&h2^-xm)Q>-eP173e$~hFHYhV@mYm76P~*X_bxK@`Exm%+;?JN4CZH%i6Iemnk}GIl{5j^f z5%&v{R_%dFJWp=5#|ikwgBOD$9*l>+EZ?NUYnP!_72Ce%`5w+a#1}|1qE_P3hB+)t z5*=90i<9DWC)N<-hj4)31VgOiaqgeQde(Xap20>J-!5XoeDD_0lK47!+s8MDcW{aM z&Y{h_c#qg5`OWY?KJd|!H_y{Aawd^Eig1}FBQgYp$c*#$vc?|*WqwA~h=nii6@i6i Z(xqmrV$o101ca;ViPgu)Jfs1i{0+$EoiP9a diff --git a/bin/Uebung3_Buchungen/Reader.class b/bin/Uebung3_Buchungen/Reader.class deleted file mode 100644 index 34ec5e48a3eca1b607df863e686866da5aca5886..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2879 zcma)8>vI!T6#w1kvDwWAN@+@$haw^*P$>u^rci4GXtki&S}6G1rc1h*Zo+1R#rF%} z@3)TQ=!}{Veo;RJwKFOo)ERaBsNelBbR6UF?j|*XI%Csz?>+aNbI&=y-#MEf|NiQ0 z07H07L5D!^t=3e<$#1`NxRRUU!gBg=vCL`9RS*{FJYk+P`wOO%@4sp4gq8CIqPuO! z_67w)sq}%Ky^hPUf%VT@ zgd>?6Nw-85pfsQ$)dpTrG!2{3r(kp2(cWT(sOY#HTLj`I(=A(p=s)t^8y$Lahy(&; zFjwf}qFV3oQV9Rrd{kzAozCb#zB z8U-X=fVEG?@fo*xk7SchB3~ii6bBU?Xws?e zRL4!Ynap-b$MZ|jD42>{Fs@*%4W+TuWzU+`aVyw!p<+cMAHYtk-5i9=($4w}Iih3I zFSb`~0)Gs*E4Zzhb-Rs@J0!amKkI@c9dsv3sb0}?g!8yx71De zv^rpx{5hzAWL3xPykmM5mtpT|C2qs)|GQUkT42TbH5{(k1r|`l98?V(aleiS@F1Jr zD`sa**N>PbOr?)yrOpxg?-3o3;xWcnw!Bfx$$K+WV?<7~Ih@h)1fC=^W~pR3%wTmY zdtom(t|cSq@U)I+@GLC~4PT_w2s_+%N|MSEjvbG@>L`*AT z6r`lc@h_|3b($Z`3TR`+ikq|K1ZRrD6y73B!U@dQ@h4Y^E55AwU*W!=Pr+wo(^G7 z$BIcKb{582tj@%%*lOrs;NnceNJMM6^jmEF0_kq_zx6Jb7>bdoVcX#<;zl%B8u1#g zoXqGy)PFMK-(yJbudZTOMwQ!`zctivGMb_O0L{=cY8A^2)zCiTj*l94%VX70YZx|^ z8m`M|Rjf3$FL9&5x9H5MpW~1`JzT?4DZW$So%-*ev0__b;}la|jWhfJJ@}BHEW&=7 z_G1}k%UF~yewOpJn-)FT#uw)<^x{Ss7{f|TU=`;~4}Go0$Hd|jT#9p8kDvMc6&w6A zANM`}h8(8pQ^hZ^aGXGN;XCBH;tQNMGxQPT9pgBGyJ@$L@2&!6IyFL#)h>FRt3r z@E6uo{0Ef76#j|$FdvCTolH_Mu!K;Mjn;X2{K7MZ!#x zZ0-B#UGomQH}}=>kmOlksD_8D(E5_$8XiCVctj*4$><05c`7{h9`psp&7boA0QNz4 z0FYutX}%pd5u!e>F2_~^lVM9;&($GTZUR^EWwaf4@%#k81Ds@m@8$blcGV6-!+h`@ z!2>;cc%Ja^y+;sVz>Cbci#9LeWkQvv?JIbdw@dJ3KL+|`t|U;mBUWe0VuZs7XpTM2 oLca#o`IVwYEE?h=5n5Fz@-0VAi;g-W2)B4*_3;KT>A;)+0Cs4S#{d8T diff --git a/buchungen2.text b/buchungen2.text new file mode 100644 index 0000000..b64acdc --- /dev/null +++ b/buchungen2.text @@ -0,0 +1,7 @@ +1 22.03.2024 "Einzahlung" 1000.00 +2 22.03.2024 "Einzahlung" 50.00 +3 23.03.2024 "Einkauf Edeka" -45.45 +4 24.03.2024 "Gehalt" 1200.00 +5 31.03.2024 "Mietzins Wohnung" -1100.00 +6 31.03.2024 "Nebenkostenpauschale Wohnung" -250.00 +7 04.04.2024 "Einkauf Netto" 42.02 diff --git a/gedichte.txt b/gedichte.txt new file mode 100644 index 0000000..cfab7ed --- /dev/null +++ b/gedichte.txt @@ -0,0 +1,145 @@ +die zwei gesellen + +es zogen zwei ruestge gesellen +zum erstenmal von haus +so jubelnd recht in die hellen +klingenden singenden wellen +des vollen fruehlings hinaus + +die strebten nach hohen dingen +die wollten trotz lust und schmerz +was rechts in der welt vollbringen +und wem sie voruebergingen +dem lachten sinn und herz + +der erste der fand ein liebchen +die schwieger kauft hof und haus +der wiegte gar bald ein buebchen +und sah aus heimlichem stuebchen +behaglich ins feld hinaus + +dem zweiten sangen und logen +die tausend stimmen im grund +verlockend sirenen und zogen +ihn in der buhlenden wogen +farbig klingenden schlund + +und wie er auftaucht vom schlunde +da war er muede und alt +sein schifflein das lag im grunde +so still wars rings in der runde +und ueber die wasser wehts kalt + +es singen und klingen die wellen +des fruehlings wohl ueber mir +und seh ich so kecke gesellen +die traenen im auge mir schwellen +ach gott fuehr mich liebreich zu dir + + + + +mondnacht + +es war als haett der himmel +die erde still gekuesst +dass sie im bluetenschimmer +von ihm nun traeumen muesst + +die luft ging durch die felder +die aehren wogten sacht +es rauschten leis die waelder +so sternklar war die nacht + +und meine seele spannte +weit ihre fluegel aus +flog durch die stillen lande +als floege sie nach haus + + + +die loreley + +ich weiss nicht was soll es bedeuten +dass ich so traurig bin +ein maerchen aus alten zeiten +das kommt mir nicht aus dem sinn + +die luft ist kuehl und es dunkelt +und ruhig fliesst der rhein +der gipfel des berges funkelt +im abendsonnenschein + +die schoenste jungfrau sitzet +dort oben wunderbar +ihr goldnes geschmeide blitzet +sie kaemmt ihr goldenes haar + +sie kaemmt es mit goldenem kamme +und singt ein lied dabei +das hat eine wundersame +gewaltige melodei + +den schiffer im kleinen schiffe +ergreift es mit wildem weh +er schaut nicht die felsenriffe +er schaut nur hinauf in die hoeh + +ich glaube die wellen verschlingen +am ende schiffer und kahn +und das hat mit ihrem singen +die loreley getan + + + +nachtgedanken + +denk ich an deutschland in der nacht +dann bin ich um den schlaf gebracht +ich kann nicht mehr die augen schliessen +und meine heissen traenen fliessen + +die jahre kommen und vergehn +seit ich die mutter nicht gesehn +zwoelf jahre sind schon hingegangen +es waechst mein sehnen und verlangen + +mein sehnen und verlangen waechst +die alte frau hat mich behext +ich denke immer an die alte +die alte frau die gott erhalte + +die alte frau hat mich so lieb +und in den briefen die sie schrieb +seh ich wie ihre hand gezittert +wie tief das mutterherz erschuettert + +die mutter liegt mir stets im sinn +zwoelf lange jahre flossen hin +zwoelf lange jahre sind verflossen +seit ich sie nicht ans herz geschlossen + +deutschland hat ewigen bestand +es ist ein kerngesundes land +mit seinen eichen seinen linden +werd ich es immer wiederfinden + +nach deutschland lechzt ich nicht so sehr +wenn nicht die mutter dorten waer +das vaterland wird nie verderben +jedoch die alte frau kann sterben + +seit ich das land verlassen hab +so viele sanken dort ins grab +die ich geliebt wenn ich sie zaehle +so will verbluten meine seele + +und zaehlen muss ich mit der zahl +schwillt immer hoeher meine qual +mir ist als waelzten sich die leichen +auf meine brust gottlob sie weichen + +gottlob durch meine fenster bricht +franzoesisch heitres tageslicht +es kommt mein weib schoen wie der morgen +und laechelt fort die deutschen sorgen \ No newline at end of file diff --git a/serializedProduct.xml b/serializedProduct.xml new file mode 100644 index 0000000..0aba9bf --- /dev/null +++ b/serializedProduct.xml @@ -0,0 +1,14 @@ + + + + + dfd + + + fdfl + + + 34.0 + + + From 096a8d62667eb3cc5faf5a22ac185e43dc005581 Mon Sep 17 00:00:00 2001 From: MHD Amin Bkdaliya <3008953@stud.hs-mannheim.de> Date: Tue, 7 May 2024 14:08:15 +0200 Subject: [PATCH 2/2] =?UTF-8?q?bin/.gitignore=20gel=C3=B6scht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bin/.gitignore | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 bin/.gitignore diff --git a/bin/.gitignore b/bin/.gitignore deleted file mode 100644 index 12d5e95..0000000 --- a/bin/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -/Uebung2_IO/ -/Testat1/ -/Lernen/ -/Uebung3_Buchungen/ -/example.txt -/buchungen2.text -/serializedProduct.xml -/gedichte.txt