Guten Tag
Ich lerne nun seit vielleicht 2 Monaten C# in der Schule und bin deshalb noch ziemlich schlecht.
Ich will einen "Einarmigen Banditen" erstellen, d.h.: eine Slot Maschine!
Dazu habe ich alles schon geschafft, bis auf die Währung.
Ich habe sehr vieles Versucht und möchte mal sehen was hier für Vorschläge kommen.
Ich habe bereits nach einer "Dynamischen Varbiablen" oder einer "Globalen Variablen" gesucht doch ohne Erfolg.
Jetzt habe ich es mit einem Array probiert und kriege ständig die Fehlermeldung: "Der Index war außerhalb des Arraybereichs".
Ich habe schon sehr viel im Internet darüber gelesen aber habe den genauen Fehler in meinem Code nicht gefunden.
Mein Ziel?
Die Eingabe des Benutzers (Wie viel er setzen will) soll er durch das Guthaben/Geld dividieren.
Diese dividierte Zahl muss aber dann als Guthaben angezeigt werden.
Mein Problem?
Er nimmt immer wieder die 100 "coins" von meinem Geld wenn ich auf den Button drücke und dividiert die Einabe des Benutzers durch die 100 "coins" und nicht von dem restlichen Guthaben.
Meine Lösung?
Bisher noch keine, habe vieles versucht und denke, dass ich bei Arrays auf der richtigen Seite bin.
(Das unten rot markierte hat er als Fehler genommen)
Danke für jeden Vorschlag / Jede Hilfe!
namespace CS_Slots_Gamble
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int ENDLOS = int.MaxValue;
int[] Geld = new int[101];
Geld[0] = 100;
int Einsatz = int.Parse(textBox1.Text);
string Währung = "coins";
string GuthabenNachGambling = Geld[0] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
for (int i = 1; i < ENDLOS; i++)
{
if (Geld[0] - Einsatz >= 0 && sender == button1)
{
Geld[0] = Geld[0] - Einsatz;
GuthabenNachGambling = Geld[(i)] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
Random rnd = new Random(); // erstellt einen Zufallsgenerator (rnd)
int z1 = rnd.Next(1, 8); // erzeugt eine Zufallszahl z1 mit 1 <= z1 < 8
int z2 = rnd.Next(1, 8);
int z3 = rnd.Next(1, 8);
if (z1 == z2 |"| z2 == z3 |"| z1 == z3)
{
Geld = Geld[i] + Einsatz + Einsatz;
GuthabenNachGambling = Geld[i] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
}
GuthabenNachGambling = Geld[i] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
}
Ich lerne nun seit vielleicht 2 Monaten C# in der Schule und bin deshalb noch ziemlich schlecht.
Ich will einen "Einarmigen Banditen" erstellen, d.h.: eine Slot Maschine!
Dazu habe ich alles schon geschafft, bis auf die Währung.
Ich habe sehr vieles Versucht und möchte mal sehen was hier für Vorschläge kommen.
Ich habe bereits nach einer "Dynamischen Varbiablen" oder einer "Globalen Variablen" gesucht doch ohne Erfolg.
Jetzt habe ich es mit einem Array probiert und kriege ständig die Fehlermeldung: "Der Index war außerhalb des Arraybereichs".
Ich habe schon sehr viel im Internet darüber gelesen aber habe den genauen Fehler in meinem Code nicht gefunden.
Mein Ziel?
Die Eingabe des Benutzers (Wie viel er setzen will) soll er durch das Guthaben/Geld dividieren.
Diese dividierte Zahl muss aber dann als Guthaben angezeigt werden.
Mein Problem?
Er nimmt immer wieder die 100 "coins" von meinem Geld wenn ich auf den Button drücke und dividiert die Einabe des Benutzers durch die 100 "coins" und nicht von dem restlichen Guthaben.
Meine Lösung?
Bisher noch keine, habe vieles versucht und denke, dass ich bei Arrays auf der richtigen Seite bin.
(Das unten rot markierte hat er als Fehler genommen)
Danke für jeden Vorschlag / Jede Hilfe!
namespace CS_Slots_Gamble
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int ENDLOS = int.MaxValue;
int[] Geld = new int[101];
Geld[0] = 100;
int Einsatz = int.Parse(textBox1.Text);
string Währung = "coins";
string GuthabenNachGambling = Geld[0] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
for (int i = 1; i < ENDLOS; i++)
{
if (Geld[0] - Einsatz >= 0 && sender == button1)
{
Geld[0] = Geld[0] - Einsatz;
GuthabenNachGambling = Geld[(i)] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
Random rnd = new Random(); // erstellt einen Zufallsgenerator (rnd)
int z1 = rnd.Next(1, 8); // erzeugt eine Zufallszahl z1 mit 1 <= z1 < 8
int z2 = rnd.Next(1, 8);
int z3 = rnd.Next(1, 8);
if (z1 == z2 |"| z2 == z3 |"| z1 == z3)
{
Geld = Geld[i] + Einsatz + Einsatz;
GuthabenNachGambling = Geld[i] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
}
GuthabenNachGambling = Geld[i] + " " + Währung;
label1.Text = "Guthaben:" + " " + GuthabenNachGambling;
}
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Angelo“ ()