Tableau JAVA

Bonjour,
J'ai un souci concernant mon algorithme en JAVA:
j'ai un tableau contenant 3 lignes et 3 colonnes, ce tableau est rempli par le caractère '-'.
---
---
---
le joueur 1 indique la position en abscisse et en ordonnée de son coup et un 'X' apparaît dans le tableau à la position indiqué. (exemple abscisse: 0 et ordonnée: 1)
donc j'obtiens
-X-
---
---

Mais voilà , mon souci est que je n'arrive pas à faire cette subsitution.dans mon algo, on me demande sans cesse l'ordonnée
Peut-on m'aider

Voiçi mon code:

char d = 'X';
char e = 'O';

char c = '-';
//déclaration d'un tableau de chaine de caractère
char[][] t = new char[3][3];
// créer un tableau rempli du caractère '-'
for(int i=0; i<t.length; i++)
for(int j=0; j<t[0].length;j++)
t[i][j] = c;

// afficher le tableau
for (int i=0; i<t.length; i++){
for(int j=0; j<t[0].length;j++)
out.print(t[i][j]);
out.println();
}

//choix du joeur

for (int i=0; i<t.length; i++)

out.println("Entrez l'abscisse de la position de votre coup : ");
int abscisse = in.nextInt();

if (!( abscisse== 0 || abscisse==1 || abscisse== 2))
System.out.println(" erreur de frappe, nouvelle saisie!");
out.print(t[i]);

for(int j=0; j<t[0].length;j++){
out.println("Entrez l'ordonnée de la position de votre coup : ");
int ordonnee = in.nextInt();

out.print(t[i][j]);

t[abscisse][ordonnee] = d;
out.print(t[abscisse][ordonnee]);
out.println();
out.print(t[i][j]);
out.println();
}

Merci par avance
Configuration: Windows XP
Firefox 3.0.16

4 réponses

  1. j'ai fait une erreur sur la boucle d'affichage de mon tableau; correction faite.

    Pourrait-on m'aider svp. Je bloque

    import static java.lang.System.*;
    import java.util.Scanner;

    public class essai{
    public static void main(String[] args){
    Scanner in = new Scanner(System.in);

    char d = 'X';
    char e = 'O';

    char c = '-';
    //déclaration d'un tableau de chaine de caractère
    char[][] t = new char[3][3];
    // créer un tableau rempli du caractère '-'
    for(int i=0; i<t.length; i++){
    for(int j=0; j<t[0].length;j++){
    t[i][j] = c;
    }
    }

    // afficher le tableau
    for (int i=0; i<t.length; i++){
    for(int j=0; j<t[0].length;j++){
    out.print(t[i][j]);
    }
    out.println();
    }

    //à la suite de ceci j'ai
    //---
    //---
    //---

    //choix du joeur
    //j'aimerais que lorsque le joueur entre abscisse 0 et ordonnée 1
    //qu'il obtienne ceci
    //-X-
    //---
    //---

    for (int i=0; i<t.length; i++){

    out.println("Entrez l'abscisse de la position de votre coup : ");
    int abscisse = in.nextInt();

    if (!( abscisse== 0 || abscisse==1 || abscisse== 2)){
    System.out.println(" erreur de frappe, nouvelle saisie!");
    }

    out.print(t[i]);

    for(int j=0; j<t[0].length;j++){
    out.println("Entrez l'ordonnée de la position de votre coup : ");
    int ordonnee = in.nextInt();

    out.print(t[i][j]);

    t[abscisse][ordonnee] = d;
    out.print(t[abscisse][ordonnee]);
    out.println();
    out.print(t[i][j]);
    out.println();
    }

    }

    }
    }
    1. pour afficher le tableau comme ça ça irra mieux

      
      // afficher le tableau
      		for (int i=0; i<t.length; i++){
      			for(int j=0; j<t[0].length;j++){
      				out.print(t[i][j]);
      				
      			}
      			out.println();
      		}
      


      adaptes la suite à l'image de ça
      1. Oui tu as raison vaut mieux les mettre.

        import static java.lang.System.*;
        import java.util.Scanner;

        public class essai{
        public static void main(String[] args){
        Scanner in = new Scanner(System.in);

        char d = 'X';
        char e = 'O';

        char c = '-';
        //déclaration d'un tableau de chaine de caractère
        char[][] t = new char[3][3];
        // créer un tableau rempli du caractère '-'
        for(int i=0; i<t.length; i++){
        for(int j=0; j<t[0].length;j++){
        t[i][j] = c;
        }
        }

        // afficher le tableau
        for (int i=0; i<t.length; i++){
        for(int j=0; j<t[0].length;j++){
        out.print(t[i][j]);
        out.println();
        }
        }

        //choix du joeur

        for (int i=0; i<t.length; i++){

        out.println("Entrez l'abscisse de la position de votre coup : ");
        int abscisse = in.nextInt();

        if (!( abscisse== 0 || abscisse==1 || abscisse== 2)){
        System.out.println(" erreur de frappe, nouvelle saisie!");
        }

        out.print(t[i]);

        for(int j=0; j<t[0].length;j++){
        out.println("Entrez l'ordonnée de la position de votre coup : ");
        int ordonnee = in.nextInt();

        out.print(t[i][j]);

        t[abscisse][ordonnee] = d;
        out.print(t[abscisse][ordonnee]);
        out.println();
        out.print(t[i][j]);
        out.println();
        }

        }

        }
        }
        1. je ne suis pas super callé en JAVA, mais est ce normal que certaines de tes boucles for soient sans les
          {
          }

          ??

          Je ne vois pas comment le programme sait ou s'arrête la boucle

          perso je les mets toujours, même si une seule instruction, car si par la suite tu en rajoute une tu vas oublier les { }