237 lines
3.8 KiB
C#
237 lines
3.8 KiB
C#
using System;
|
|
|
|
using System.Collections.Generic;
|
|
|
|
using System.Windows;
|
|
|
|
using System.Windows.Controls;
|
|
|
|
using System.Windows.Media;
|
|
|
|
namespace Lotto_Test
|
|
|
|
{
|
|
|
|
public partial class MainWindow : Window
|
|
|
|
{
|
|
|
|
List<int> auswahl = new List<int>();
|
|
|
|
List<Button> knöpfe = new List<Button>();
|
|
|
|
List<int> gezogen = new List<int>();
|
|
|
|
double geld = 2000;
|
|
|
|
public MainWindow()
|
|
|
|
{
|
|
|
|
InitializeComponent();
|
|
|
|
for (int i = 1; i <= 49; i++)
|
|
|
|
{
|
|
|
|
Button b = new Button();
|
|
|
|
b.Content = i.ToString();
|
|
|
|
b.Tag = i;
|
|
|
|
b.Width = 35;
|
|
|
|
b.Height = 35;
|
|
|
|
b.Margin = new Thickness(3);
|
|
|
|
b.Background = Brushes.LightGray;
|
|
|
|
b.Click += Zahl_Click;
|
|
|
|
Feld.Children.Add(b);
|
|
|
|
knöpfe.Add(b);
|
|
|
|
}
|
|
|
|
GeldAktualisieren();
|
|
|
|
}
|
|
|
|
void Zahl_Click(object sender, RoutedEventArgs e)
|
|
|
|
{
|
|
|
|
if (gezogen.Count > 0) return;
|
|
|
|
Button b = (Button)sender;
|
|
|
|
int n = (int)b.Tag;
|
|
|
|
if (auswahl.Contains(n))
|
|
|
|
{
|
|
|
|
auswahl.Remove(n);
|
|
|
|
b.Background = Brushes.LightGray;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if (auswahl.Count >= 6)
|
|
|
|
{
|
|
|
|
MessageBox.Show("Nur 6 Zahlen erlaubt");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
auswahl.Add(n);
|
|
|
|
b.Background = Brushes.LightGreen;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
void Ziehung_Click(object sender, RoutedEventArgs e)
|
|
|
|
{
|
|
|
|
if (auswahl.Count != 6)
|
|
|
|
{
|
|
|
|
MessageBox.Show("Wähle genau 6 Zahlen");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
if (geld < 5)
|
|
|
|
{
|
|
|
|
MessageBox.Show("Nicht genug Geld");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
geld -= 5;
|
|
|
|
gezogen.Clear();
|
|
|
|
List<int> zahlen = new List<int>();
|
|
|
|
for (int i = 1; i <= 49; i++) zahlen.Add(i);
|
|
|
|
Random r = new Random();
|
|
|
|
while (gezogen.Count < 6)
|
|
|
|
{
|
|
|
|
int z = r.Next(zahlen.Count);
|
|
|
|
gezogen.Add(zahlen[z]);
|
|
|
|
zahlen.RemoveAt(z);
|
|
|
|
}
|
|
|
|
int treffer = 0;
|
|
|
|
foreach (Button b in knöpfe)
|
|
|
|
{
|
|
|
|
int z = (int)b.Tag;
|
|
|
|
if (auswahl.Contains(z))
|
|
|
|
{
|
|
|
|
if (gezogen.Contains(z))
|
|
|
|
{
|
|
|
|
b.Background = Brushes.LightGreen;
|
|
|
|
treffer++;
|
|
|
|
}
|
|
|
|
else b.Background = Brushes.Red;
|
|
|
|
}
|
|
|
|
else b.Background = Brushes.LightGray;
|
|
|
|
}
|
|
|
|
double gewinn = 0;
|
|
|
|
if (treffer == 1) gewinn = 1;
|
|
|
|
if (treffer == 2) gewinn = 5;
|
|
|
|
if (treffer == 3) gewinn = 100;
|
|
|
|
if (treffer == 4) gewinn = 1000;
|
|
|
|
if (treffer == 5) gewinn = 1500;
|
|
|
|
if (treffer == 6) gewinn = 2000;
|
|
|
|
geld += gewinn;
|
|
|
|
GeldAktualisieren();
|
|
|
|
MessageBox.Show("Gezogen: " + string.Join(" ", gezogen) +
|
|
|
|
"\nDeine: " + string.Join(" ", auswahl) +
|
|
|
|
"\nTreffer: " + treffer +
|
|
|
|
"\nGewinn: " + gewinn + " €");
|
|
|
|
}
|
|
|
|
void Reset_Click(object sender, RoutedEventArgs e)
|
|
|
|
{
|
|
|
|
auswahl.Clear();
|
|
|
|
gezogen.Clear();
|
|
|
|
foreach (Button b in knöpfe)
|
|
|
|
b.Background = Brushes.LightGray;
|
|
|
|
GeldAktualisieren();
|
|
|
|
}
|
|
|
|
void GeldAktualisieren()
|
|
|
|
{
|
|
|
|
GeldText.Text = "Geld: " + geld.ToString("0.00") + " €";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|