Array füllen?

  • Ich möchte folgendes ausgeben:


    A1 A2 A3 A4 A5 A6 A7 A8
    B1 B2 B3 B4 B5 B6 B7 B8
    C1 C2 C3 C4 C5 C6 C7 C8
    D1 D2 D3 D4 D5 D6 D7 D8
    E1 E2 E3 E4 E5 E6 E7 E8
    F1 F2 F3 F4 F5 F6 F7 F8
    G1 G2 G3 G4 G5 G6 G7 G8
    H1 H2 H3 H4 H5 H6 H7 H8

    Hierzu mein Code leider funktioniert er nicht



    Bitte um Hilfe
    Lg Noobie94

  • Was soll das denn werden

    Code
    1. [FONT=Consolas][size=10][FONT=Consolas][/FONT][/SIZE][/FONT][FONT=Consolas][size=10][COLOR=#0000ff][FONT=Consolas][size=10][COLOR=#0000ff][FONT=Consolas][size=10][COLOR=#0000ff]for[/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Consolas][size=10][FONT=Consolas][size=10] ([/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][size=10][COLOR=#0000ff][FONT=Consolas][size=10][COLOR=#0000ff][FONT=Consolas][size=10][COLOR=#0000ff]char[/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Consolas][size=10][FONT=Consolas][size=10] i = [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][size=10][COLOR=#a31515][FONT=Consolas][size=10][COLOR=#a31515][FONT=Consolas][size=10][COLOR=#a31515]'A'[/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Consolas][size=10][FONT=Consolas][size=10]; i < [/SIZE][/FONT][/SIZE][/FONT][FONT=Consolas][size=10][COLOR=#a31515][FONT=Consolas][size=10][COLOR=#a31515][FONT=Consolas][size=10][COLOR=#a31515]'I'[/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][/COLOR][/SIZE][/FONT][FONT=Consolas][size=10][FONT=Consolas][size=10]; i++)[/SIZE][/FONT][/SIZE][/FONT]


    In einer for Schleife geht nur das Hochzählen einer Zahl.

  • [...]
    In einer for Schleife geht nur das Hochzählen einer Zahl.



    Stimmt nicht ganz, ein char ist auch nicht mehr als ein Zahlenwert der einem Buchstaben entspricht und kann problemlos inkrementiert werden.


    @Thread:


    Ich gehe von der Annahme aus, dass du C# verwendest. Falls du eine andere .NET Sprache verwendest solltest du aus meiner Antwort aber auch etwas anfangen können.


    int[,] zweidim = newint[8, 8]; sollte int[,] zweidim = new int[8, 8]; sein.


    Mit Console.Write(zweidim[i, j] + " "); versuchst du, z.B. auf zweidim['A', 1] zuzugreifen. Zweidim hat aber nur numerische Indices von 0 bis 7. 'A' hingegen hat den Zahlenwert 65, du versuchst also auf zweidim[65, 1] zuzugreifen, darum erhältst du die IndexOutOfBounds Exception.


    Wenn es wirklich nur darum geht, die Matrix darzustellen, brauchst du das Array gar nicht. Dann kannst du es auf die folgende Weise lösen:



    EDIT:


    Wenn du die Daten aber auch noch in deinem Array ablegen willst, kannst du das folgendermaßen machen:


    Dabei ziehen wir in der Variable row den Zahlenwert von 'A' vom aktuellen Wert von i ab. Daraus erhalten wir die Zahlen 0-7, was den Indices der Zeilen in zweidim entspricht. Zu beachten ist, dass ich zweidim hier zu einem String-Array gemacht habe, als reines int array hat es aus meiner Sicht keine wirkliche Daseinsberechtigung ;)

    3 Mal editiert, zuletzt von lukasn () aus folgendem Grund: Antwort erweitert