C# Array Wert geben?
Hey, ich wollte bisschen mit Arrays in C# rumprobieren und hab das Programm da unten geschrieben aber wenn ichs starte geht es für den ersten Moment bis ich dem Array einen Wert gebe und dann steht es gäbe ein "Out Of Range Error", wüsst jemand wie man das lösen könnte? Danke!
Code:
Console.Write("Rechenoperatoion [+,-,*,/]: ");
char rechop = Convert.ToChar(Console.ReadLine());
Console.Write("Anzahl: ");
int y = Convert.ToInt32(Console.ReadLine());
int[] array = new int[y];
Console.Write("Wert: ");
array[y] = Convert.ToInt32(Console.ReadLine());
int lösung = 0;
if (rechop == '+')
{
for (int i = 1; i <= y; i++)
{
lösung += array[y];
}
Console.Write(lösung)
}
1 Antwort
Die Fehlerzeile wäre hilfreich gewesen. Scheint
array[y] = Convert.ToInt32(Console.ReadLine());
zu sein. Wenn du z.B. 7 für y eingibst, hat das Array 7 Elemente mit den Indizes 0 bis 6. Dann kommt der Fehler in der obigen Zeile, weil es kein array[7] gibt.
Btw:
- ein sprechender Name statt 'y', z.B. 'anzahl' wäre ausagekräftiger.
- Du kannst den Code als Code formatieren:

In der Schleife muss es außerdem array[i] heißen, wobei der Bereich von 0 bis y-1 gehen muss.
Zudem brauchst du für die Eingabe der Werte eine weitere Schleife; von der Array-Lösung ausgehend.