using System; using System.Collections.Generic; using System.Linq; using System.Windows; using System.Windows.Controls; using System.Windows.Media; namespace LottoApp { public partial class MainWindow : Window { // ............................................................................................................. Random zufall = new Random(); int geld = 1000; int[] meineZahlen = new int[6]; int[] gewinnZahlen = new int[6]; int gewählteAnzahl = 0; public MainWindow() { InitializeComponent(); CreateLottoButtons(); GeldAnzeige.Text = "Geld dass du hast " + geld + "€"; } private void CreateLottoButtons() { // Erstelle Zahlen-Buttons 1-49 for (int i = 1; i <= 49; i++) { var btn = new Button { Content = i.ToString(), Width = 50, Height = 50, Margin = new Thickness(2), FontSize = 12, FontWeight = FontWeights.Bold, Background = new SolidColorBrush(Color.FromRgb(230, 230, 230)), Tag = i }; btn.Click += ZahlenButton_Click; ZahlenGrid.Children.Add(btn); } // Erstelle Gewinnzahlen Anzeige Buttons (nicht klickbar) for (int i = 0; i < 6; i++) { var btn = new Button { Content = "?", Width = 50, Height = 50, Margin = new Thickness(2), FontSize = 14, FontWeight = FontWeights.Bold, Background = new SolidColorBrush(Color.FromRgb(255, 215, 0)), IsEnabled = false }; GewinnzahlenGrid.Children.Add(btn); } } private void ZahlenButton_Click(object sender, RoutedEventArgs e) { var button = sender as Button; int zahl = (int)button.Tag; // Prüfen ob Zahl schon gewählt ist bool istGewählt = false; for (int i = 0; i < gewählteAnzahl; i++) { if (meineZahlen[i] == zahl) { istGewählt = true; break; } } if (istGewählt) { // Zahl abwählen for (int i = 0; i < gewählteAnzahl; i++) { if (meineZahlen[i] == zahl) { for (int j = i; j < gewählteAnzahl - 1; j++) { meineZahlen[j] = meineZahlen[j + 1]; } gewählteAnzahl--; break; } } button.Background = new SolidColorBrush(Color.FromRgb(230, 230, 230)); } else if (gewählteAnzahl < 6) { // Zahl auswählen meineZahlen[gewählteAnzahl] = zahl; gewählteAnzahl++; button.Background = new SolidColorBrush(Color.FromRgb(100, 200, 100)); } else { MessageBox.Show("Du kannst nur 6 Zahlen auswählen!"); } } private void SpielenButton_Click(object sender, RoutedEventArgs e) { // Geld prüfen if (geld < 300) { MessageBox.Show("Du hast nicht genug Geld! Du brauchst 300€ zum Spielen."); return; } // Prüfen ob 6 Zahlen gewählt sind if (gewählteAnzahl != 6) { MessageBox.Show("Bitte wähle genau 6 Zahlen aus!"); return; } // -------------------------------------------------------------------------------------------------------- geld = geld - 300; // ---------------------------------------------------------------------------------------------------------------------- for (int i = 0; i < gewinnZahlen.Length; i++) { gewinnZahlen[i] = zufall.Next(1, 50); } // --------------------------------------------------------------------------------------------------------------------------- ZeigeLottoscheinMitFarben(meineZahlen, gewinnZahlen); // ------------------------------------------------------------------------------------------------------------------------- Array.Sort(meineZahlen, 0, gewählteAnzahl); Array.Sort(gewinnZahlen); // ----------------------------------------------------------------------------------------------------------------------------- int treffer = 0; for (int i = 0; i < gewählteAnzahl; i++) { for (int j = 0; j < gewinnZahlen.Length; j++) { if (meineZahlen[i] == gewinnZahlen[j]) { treffer++; break; //um doppelte Treffer zu vermeiden } } } //------------------------------------------------------------------------------------------------------------------------- int gewinn = 0; if (treffer == 3) { gewinn = 350; // 50€ Gewinn } else if (treffer == 4) { gewinn = 600; // 300€ Gewinn } else if (treffer == 5) { gewinn = 1300; // 1000€ Gewinn } else if (treffer == 6) { gewinn = 10300; // 10000€ Gewinn - JACKPOT } geld = geld + gewinn; // -------------------------------------------------------------------------------------------------------------- GeldAnzeige.Text = "Geld dass du hast " + geld + "€"; if (geld >= 1000) GeldAnzeige.Foreground = Brushes.Green; else if (geld >= 300) GeldAnzeige.Foreground = Brushes.Orange; else GeldAnzeige.Foreground = Brushes.Red; if (treffer < 3) { Ergebnis.Text = "Du hast " + treffer + " Treffer. Leider nichts gewonnen!"; Ergebnis.Foreground = Brushes.Red; } else if (treffer == 3) { Ergebnis.Text = "Du hast " + treffer + " Treffer! Du gewinnst 50€!"; Ergebnis.Foreground = Brushes.Blue; } else if (treffer == 4) { Ergebnis.Text = "Du hast " + treffer + " Treffer! Du gewinnst 300€!"; Ergebnis.Foreground = Brushes.Blue; } else if (treffer == 5) { Ergebnis.Text = "SUPER! Du hast " + treffer + " Treffer! Du gewinnst 1000€!"; Ergebnis.Foreground = Brushes.Green; } else if (treffer == 6) { Ergebnis.Text = "JACKPOT! Du hast alle 6 Treffer! Du gewinnst 10000€! 🎉"; Ergebnis.Foreground = Brushes.Gold; } if (geld < 300) { MessageBox.Show("Achtung! Du hast nicht mehr genug Geld für ein weiteres Spiel! Bitte Geld überweisen."); } } // -------------------------------------------------------------------------------------------------------------------- private void ZeigeLottoscheinMitFarben(int[] meineZahlen, int[] gewinnZahlen) { // Gewinnzahlen in den Buttons anzeigen var gewinnButtons = GewinnzahlenGrid.Children.Cast