README.md aktualisiert

This commit is contained in:
Jan-Alexander Dshek 2025-06-11 19:12:57 +02:00
parent eb24f26174
commit ae5c3c7497

View File

@ -1,3 +1,39 @@
# Lotto_Projekt
# Lotto Spiel WPF Anwendung
Lottospiel mit Interface
## Projektbeschreibung
Dieses Projekt ist eine WPF-Anwendung in C#, in der Benutzer ein klassisches 6-aus-49-Lotto-Spiel spielen können. Ziel der Anwendung ist es, 6 Zahlen zwischen 1 und 49 auszuwählen, eine Ziehung zu starten und den möglichen Gewinn abhängig von der Anzahl der Treffer zu berechnen. Das Spiel enthält ein Kontostand-System, das den Einsatz pro Spiel (5 €) sowie eventuelle Gewinne berücksichtigt.
Die Oberfläche wurde benutzerfreundlich gestaltet, mit einem Zahlenfeld zur Auswahl, einer Seitenleiste für Aktionen und einer Anzeige des aktuellen Kontostands.
## Funktionen
- Auswahl von 6 Zahlen über Buttons (149)
- Zufällige Ziehung von 6 Lottozahlen
- Markierung der Treffer und Nicht-Treffer
- Gewinnberechnung basierend auf Trefferanzahl
- Kontostand-Management mit Startguthaben von 2000 €
- Reset-Funktion zum Zurücksetzen des Spiels
## Team & Aufgabenverteilung
**Jan Dshek**
- Entwicklung der Spiellogik (Ziehung, Trefferprüfung, Gewinnermittlung)
- Implementierung der Benutzerinteraktion mit den Zahlenbuttons
- Validierung der Eingabe (max. 6 Zahlen, ausreichend Guthaben)
**Kevin Dietze**
- Gestaltung des XAML-Layouts (UI-Design)
- Erstellung der grafischen Benutzeroberfläche mit WrapPanel und StackPanel
- Integration der Kontostandsanzeige und Aktionsbuttons
## Probleme und Herausforderungen
- **Mehrfachauswahl-Validierung:** Es musste verhindert werden, dass mehr als 6 Zahlen ausgewählt werden können. Dabei haben wir ein Problem mit der UI-Synchronisation entdeckt, das behoben werden konnte, indem die Auswahl direkt in der `Click`-Methode überprüft wurde.
- **Kontostandsaktualisierung:** Bei mehrfachen Ziehungen ohne Zurücksetzen wurden irrtümlich mehrfach Einsätze abgezogen. Wir haben daher eine Sperrung weiterer Eingaben nach der Ziehung integriert.
- **Markierungslogik:** Es war anfangs unklar, wie die Buttons nach der Ziehung farblich korrekt dargestellt werden sollen (Treffer = Grün, Niete = Rot). Dieses Problem wurde durch einen klaren Vergleich zwischen gezogenen und gewählten Zahlen gelöst.
- **Reset-Verhalten:** Es kam vor, dass nach dem Zurücksetzen noch alte Ziehungsergebnisse angezeigt wurden. Dieses Problem wurde durch das Leeren der Listen `selectedNumbers` und `gezogeneZahlen` sowie das Zurücksetzen der Button-Farben gelöst.
## Fazit
Das Projekt hat geholfen, sowohl das Verständnis von WPF als auch den Umgang mit C# in einer GUI-Anwendung zu vertiefen. Durch die klare Aufgabenverteilung konnte jeder gezielt seine Stärken einbringen, und wir haben wichtige Erfahrungen im Umgang mit Events, Benutzerführung und Zustandsspeicherung gesammelt.