K
kcinay055679
Gast
Visual Studio gibt mir die Fehlermeldung: System.IndexOutOfRangeException aus
Dabei sind alle Zahlen innerhalb des Index
Der für diese Frage relevante Code befindet sich auf den Zeilen 42 -207 ( Ich schreibe das weil: als ich den Code in einer neuen Datei ausgeführt habe gab es keine Fehlermeldung.)
Mein Code:
Dabei sind alle Zahlen innerhalb des Index
Der für diese Frage relevante Code befindet sich auf den Zeilen 42 -207 ( Ich schreibe das weil: als ich den Code in einer neuen Datei ausgeführt habe gab es keine Fehlermeldung.)
Mein Code:
C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Collections;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Diagnostics;
using System.Media;
using System.Drawing;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
namespace Kcinay_environment
{
class Hauptklasse
{
public static void Main( string[] args )
{
string AdminEingabe;
string AdminPasswort = "Abc123";
string RechnerZahl1;
string RechnerZahl2;
string Operator;
string EingabeModul;
string EingabeZahlenspiel;
string AktuellerBenutzer;
string EingabeBenutzer;
string[] BenutzerListe = new string[6];
{
BenutzerListe[0] = "Yanick";
BenutzerListe[1] = "Pfanner";
BenutzerListe[2] = "Housi";
BenutzerListe[3] = "Barbara";
BenutzerListe[4] = "Gast";
BenutzerListe[5] = "Admin";
}
string[,,] StatistikListe = new string[6, 10, 11];
{
/* x ,y, z
// x = User
// y = Zeit
z = Versuche
*/
//Benutzer "Yanick = 0"
{
//Die letzten 10 zeit Messungen des Benutzers "0"
StatistikListe[0, 0, 0] = null;
StatistikListe[0, 1, 0] = null;
StatistikListe[0, 2, 0] = null;
StatistikListe[0, 3, 0] = null;
StatistikListe[0, 4, 0] = null;
StatistikListe[0, 5, 0] = null;
StatistikListe[0, 6, 0] = null;
StatistikListe[0, 7, 0] = null;
StatistikListe[0, 8, 0] = null;
StatistikListe[0, 9, 0] = null;
//Die letzten 10 Versuche des Benutzers "0"
StatistikListe[0, 0, 1] = null;
StatistikListe[0, 0, 2] = null;
StatistikListe[0, 0, 3] = null;
StatistikListe[0, 0, 4] = null;
StatistikListe[0, 0, 5] = null;
StatistikListe[0, 0, 6] = null;
StatistikListe[0, 0, 7] = null;
StatistikListe[0, 0, 8] = null;
StatistikListe[0, 0, 9] = null;
StatistikListe[0, 0, 10] = null;
}
//Benutzer "Pfanner = 1"
{
//Die letzten 10 zeit Messungen des Benutzers "1"
//StatistikListe[1, 0, 0] = null;
StatistikListe[1, 1, 0] = null;
StatistikListe[1, 2, 0] = null;
StatistikListe[1, 3, 0] = null;
StatistikListe[1, 4, 0] = null;
StatistikListe[1, 5, 0] = null;
StatistikListe[1, 6, 0] = null;
StatistikListe[1, 7, 0] = null;
StatistikListe[1, 8, 0] = null;
StatistikListe[1, 9, 0] = null;
StatistikListe[1, 10, 0] = null;
//Die letzten 10 Versuche des Benutzers "1"
StatistikListe[1, 0, 1] = null;
StatistikListe[1, 0, 2] = null;
StatistikListe[1, 0, 3] = null;
StatistikListe[1, 0, 4] = null;
StatistikListe[1, 0, 5] = null;
StatistikListe[1, 0, 6] = null;
StatistikListe[1, 0, 7] = null;
StatistikListe[1, 0, 8] = null;
StatistikListe[1, 0, 9] = null;
StatistikListe[1, 0, 10] = null;
}
//Benutzer "Housi = 2"
{
//Die letzten 10 zeit Messungen des Benutzers "2"
StatistikListe[2, 0, 0] = null;
StatistikListe[2, 1, 0] = null;
StatistikListe[2, 2, 0] = null;
StatistikListe[2, 3, 0] = null;
StatistikListe[2, 4, 0] = null;
StatistikListe[2, 5, 0] = null;
StatistikListe[2, 6, 0] = null;
StatistikListe[2, 7, 0] = null;
StatistikListe[2, 8, 0] = null;
StatistikListe[2, 9, 0] = null;
StatistikListe[2, 10, 0] = null;
//Die letzten 10 Versuche des Benutzers "2"
StatistikListe[2, 0, 1] = null;
StatistikListe[2, 0, 2] = null;
StatistikListe[2, 0, 3] = null;
StatistikListe[2, 0, 4] = null;
StatistikListe[2, 0, 5] = null;
StatistikListe[2, 0, 6] = null;
StatistikListe[2, 0, 7] = null;
StatistikListe[2, 0, 8] = null;
StatistikListe[2, 0, 9] = null;
StatistikListe[2, 0, 10] = null;
}
// Benutzer "Barbara = 3"
{
//Die letzten 10 zeit Messungen des Benutzers "3"
StatistikListe[3, 0, 0] = null;
StatistikListe[3, 1, 0] = null;
StatistikListe[3, 2, 0] = null;
StatistikListe[3, 3, 0] = null;
StatistikListe[3, 4, 0] = null;
StatistikListe[3, 5, 0] = null;
StatistikListe[3, 6, 0] = null;
StatistikListe[3, 7, 0] = null;
StatistikListe[3, 8, 0] = null;
StatistikListe[3, 9, 0] = null;
StatistikListe[3, 10, 0] = null;
//Die letzten 10 Versuche des Benutzers "3"
StatistikListe[3, 0, 1] = null;
StatistikListe[3, 0, 2] = null;
StatistikListe[3, 0, 3] = null;
StatistikListe[3, 0, 4] = null;
StatistikListe[3, 0, 5] = null;
StatistikListe[3, 0, 6] = null;
StatistikListe[3, 0, 7] = null;
StatistikListe[3, 0, 8] = null;
StatistikListe[3, 0, 9] = null;
StatistikListe[3, 0, 10] = null;
}
// Benutzer "Gast = 4"
{
//Die letzten 10 zeit Messungen des Benutzers "4"
StatistikListe[4, 0, 0] = null;
StatistikListe[4, 1, 0] = null;
StatistikListe[4, 2, 0] = null;
StatistikListe[4, 3, 0] = null;
StatistikListe[4, 4, 0] = null;
StatistikListe[4, 5, 0] = null;
StatistikListe[4, 6, 0] = null;
StatistikListe[4, 7, 0] = null;
StatistikListe[4, 8, 0] = null;
StatistikListe[4, 9, 0] = null;
StatistikListe[2, 10, 0] = null;
//Die letzten 10 Versuche des Benutzers "4"
StatistikListe[4, 0, 1] = null;
StatistikListe[4, 0, 2] = null;
StatistikListe[4, 0, 3] = null;
StatistikListe[4, 0, 4] = null;
StatistikListe[4, 0, 5] = null;
StatistikListe[4, 0, 6] = null;
StatistikListe[4, 0, 7] = null;
StatistikListe[4, 0, 8] = null;
StatistikListe[4, 0, 9] = null;
StatistikListe[4, 0, 10] = null;
}
// Benutzer "Admin = 5"
{
//Die letzten 10 zeit Messungen des Benutzers "5"
StatistikListe[5, 0, 0] = null;
StatistikListe[5, 1, 0] = null;
StatistikListe[5, 2, 0] = null;
StatistikListe[5, 3, 0] = null;
StatistikListe[5, 4, 0] = null;
StatistikListe[5, 5, 0] = null;
StatistikListe[5, 6, 0] = null;
StatistikListe[5, 7, 0] = null;
StatistikListe[5, 8, 0] = null;
StatistikListe[5, 9, 0] = null;
StatistikListe[5, 10, 0] = null;
//Die letzten 10 Versuche des Benutzers "5"
StatistikListe[5, 0, 1] = null;
StatistikListe[5, 0, 2] = null;
StatistikListe[5, 0, 3] = null;
StatistikListe[5, 0, 4] = null;
StatistikListe[5, 0, 5] = null;
StatistikListe[5, 0, 6] = null;
StatistikListe[5, 0, 7] = null;
StatistikListe[5, 0, 8] = null;
StatistikListe[5, 0, 9] = null;
StatistikListe[5, 0, 10] = null;
}
}
Random rnd = new Random();
int löschcounter = 0;
int Zahl = rnd.Next(0, 1000);
int Versuche = 0;
int RechnerZahl1Int;
int RechnerZahl2Int;
int RechnerErgebnis;
String OperatorWort;
while (true)
{
Console.WriteLine("Bitte melde dich mit deinem Benutzernamen an");
EingabeBenutzer = Console.ReadLine();
if (BenutzerListe[0] == EingabeBenutzer)
{
AktuellerBenutzer = "Yanick";
break;
}
if (BenutzerListe[1] == EingabeBenutzer)
{
AktuellerBenutzer = "Pfanner";
break;
}
if (BenutzerListe[2] == EingabeBenutzer)
{
AktuellerBenutzer = "Housi";
break;
}
if (BenutzerListe[3] == EingabeBenutzer)
{
AktuellerBenutzer = "Barbara";
break;
}
if (BenutzerListe[4] == EingabeBenutzer)
{
while (true)
{
Console.Clear();
Console.WriteLine("Bitte melde dich mit dem Admin Passwort an");
AdminEingabe = Console.ReadLine();
if (AdminEingabe.Equals(AdminPasswort))
{
AktuellerBenutzer = "Admin";
break;
}
else
{
Console.WriteLine("Bitte gib das korrekte Passwort ein");
Console.ReadKey();
}
}
break;
}
else
{
Console.Clear();
Console.WriteLine("Bitte melde dich mit einem gültigen Benutzernamen an");
Console.ReadKey();
Console.Clear();
}
}
Console.WriteLine(" ");
Console.WriteLine("Du bist als " + AktuellerBenutzer + " angemeldet");
Console.WriteLine(" ");
Console.WriteLine(" ");
Console.WriteLine("Dir stehen folgende Möglichkeiten zur verfügung");
Console.WriteLine(" ");
Console.WriteLine("Zahlenspiel");
Console.WriteLine("Rechner");
Console.WriteLine("Dieses Produkt wird noch entwickelt");
Console.WriteLine("Dieses Produkt wird noch entwickelt");
Console.WriteLine("Statistik (noch nicht verfügbar) ");
Console.WriteLine("Zum benutzen den Programmnamen eingeben ");
Console.ReadKey();
while (true)
{
EingabeModul = Console.ReadLine();
switch (EingabeModul)
{
case "Zahlenspiel":
{
Console.Clear();
SoundPlayer simpleSound = new SoundPlayer(@"C:\Tickende_Uhr.wav");
simpleSound.Play();
Console.WriteLine("Dies ist ein Zahlenerratungs Spiel");
Console.WriteLine("Das Spiel beinhaltet eine Zahlenspanne von 0 - 1000");
Console.WriteLine("Tippe eine Zahl und das Program sagt dir ob die Gesuchte Zahl kleiner oder Grösser ist als die Eingegebene.");
Console.WriteLine(" ");
Task.Delay(3000).Wait();
Console.Clear();
startTime();
while (true)
{
Console.WriteLine("Tippe eine Zahl: ");
EingabeZahlenspiel = Console.ReadLine();
if (EingabeZahlenspiel == "Lösung")
{
Console.Clear();
Console.WriteLine("Die Lösung war: " + Zahl);
Console.WriteLine(" ");
Console.WriteLine("Du hast " + getTime() + " gebraucht um die Richtige Zahl zu finden :-)");
simpleSound.Stop();
Console.ReadKey();
break;
}
int Ausgabe = Convert.ToInt32(EingabeZahlenspiel);
if (Zahl == Ausgabe)
{
Console.Clear();
Console.WriteLine("Du hast die Richtige Zahl gefunden");
Console.WriteLine("Es war die Zahl " + Zahl);
Console.WriteLine("Du hast " + getTime() + " gebraucht um die Richtige Zahl zu finden :-)");
Console.WriteLine("Du hast Insgesammt " + Versuche + " Versuche gebraucht.");
simpleSound.Stop();
Console.ReadKey();
Console.Clear();
break;
}
if (Ausgabe > Zahl)
{
löschcounter += 1;
if (löschcounter == 3)
{
löschcounter = 0;
Console.Clear();
Console.WriteLine(Ausgabe);
}
Versuche += 1;
Console.WriteLine("Die eingegebene Zahl ist zu gross");
Console.WriteLine(" ");
Console.WriteLine("Du hast bisher " + getTime() + " gebraucht.");
Console.WriteLine("Du hast bisher " + Versuche + " Versuche gebraucht.");
Console.WriteLine(" ");
Console.WriteLine(" ");
}
if (Ausgabe < Zahl)
{
löschcounter += 1;
if (löschcounter == 3)
{
löschcounter = 0;
Console.Clear();
Console.WriteLine(Ausgabe);
}
Versuche += 1;
Console.WriteLine("Die eingegebene Zahl ist zu klein");
Console.WriteLine(" ");
Console.WriteLine("Du hast bisher " + getTime() + " gebraucht.");
Console.WriteLine("Du hast bisher " + Versuche + " Versuche gebraucht.");
Console.WriteLine(" ");
Console.WriteLine(" ");
Console.WriteLine(" ");
}
}
break;
}
case "Rechner":
{
Console.WriteLine("Das ist mein Rechner");
Console.WriteLine("Zuerst die 1. Zahl eingeben danach Enter ");
Console.WriteLine("Anschlissend den Operator eingeben (+,-,*,/) danach Enter ");
Console.WriteLine("Zahl 1 eingeben ");
RechnerZahl1 = Console.ReadLine();
RechnerZahl1Int = Convert.ToInt32(RechnerZahl1);
while (true)
{
Console.WriteLine("Operator eingeben(+,-,*,/)");
Operator = Console.ReadLine();
if (!Operator.Equals("+") && !Operator.Equals("-") && !Operator.Equals("*") && !Operator.Equals("/"))
{
Console.WriteLine("Bitte einen gültigen Operator eingeben");
}
else
{
break;
}
}
Console.WriteLine("Zahl 2 eingeben ");
RechnerZahl2 = Console.ReadLine();
RechnerZahl2Int = Convert.ToInt32(RechnerZahl2);
switch (Operator)
{
case "+":
RechnerErgebnis = RechnerZahl1Int + RechnerZahl2Int;
OperatorWort = " Plus ";
break;
case "-":
RechnerErgebnis = RechnerZahl1Int - RechnerZahl2Int;
OperatorWort = " Minus ";
break;
case "*":
RechnerErgebnis = RechnerZahl1Int * RechnerZahl2Int;
OperatorWort = " mal ";
break;
case "/":
RechnerErgebnis = RechnerZahl1Int / RechnerZahl2Int;
OperatorWort = " durch ";
break;
default:
// we are sure that this cannot happen, as we checked "Operator"
throw new InvalidOperationException("A programming mistake occurred!");
}
Console.WriteLine("Die Rechnung lautet " + RechnerZahl1Int + OperatorWort + RechnerZahl2Int + "ergibt" + RechnerErgebnis);
Console.ReadKey();
break;
}
case "Statistik":
Console.WriteLine("Versuche Zeit" );
break;
default:
{
Console.Clear();
Console.WriteLine("Bitte wähle ein existierendes Programm aus ");
Console.ReadKey();
Console.Clear();
Console.WriteLine("Dir stehen folgende Möglichkeiten zur verfügung");
Console.WriteLine(" ");
Console.WriteLine("Zahlenspiel");
Console.WriteLine("Dieses Produkt wird noch entwickelt");
Console.WriteLine("Dieses Produkt wird noch entwickelt");
Console.WriteLine("Dieses Produkt wird noch entwickelt");
Console.WriteLine("Statistik (noch nicht verfügbar) ");
Console.WriteLine("Zum benutzen den Programmnamen eingeben! ");
EingabeModul = Console.ReadLine();
break;
}
}
}
}
static Stopwatch stopWatch;
static void startTime()
{
stopWatch = new Stopwatch();
stopWatch.Start();
}
static String getTime()
{
long ms = stopWatch.ElapsedMilliseconds;
int minuten = (int)(ms / 1000 / 60);
int sekunden = (int)((ms - minuten * 1000 * 60) / 1000);
String strReturn = "";
if (minuten != 0)
strReturn = minuten + " Minute" + (minuten == 1 ? "" : "n");
if (sekunden != 0)
{
if (strReturn.Length != 0)
strReturn += " und ";
strReturn += sekunden + " Sekunde" + (sekunden == 1 ? "" : "n");
}
return strReturn;
}
}
}