Probleme de compilation sur java

Fermé
cindoo - 15 juin 2010 à 15:22
irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 - 16 juin 2010 à 22:26
Bonjour,
j'ai un probleme de compilation dans mon programme pouvez vous maider svp

voila les erreurs afficher:

Puissance4.java:185: cannot find symbol
symbol : class Puissance4GUI
location: class Puissance4
Puissance4GUI gui = new Puissance4GUI ( plateau);
^
Puissance4.java:185: cannot find symbol
symbol : class Puissance4GUI
location: class Puissance4
Puissance4GUI gui = new Puissance4GUI ( plateau);
^
Puissance4.java:190: cannot find symbol
symbol : variable Saisie
location: class Puissance4
Saisie.litexte ();
^
Puissance4.java:198: cannot find symbol
symbol : variable Saisie
location: class Puissance4
int nbColonne = Saisie.litentier();
^
Puissance4.java:201: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 1 : la colonne" + nbColonne-1 +" est pleine! Choisissez une autre colonne") ;
^
Puissance4.java:202: cannot find symbol
symbol : variable Saisie
location: class Puissance4
nbColonne = Saisie.litentier();
^
Puissance4.java:217: nbColonne is already defined in main(java.lang.String[])
int nbColonne = Saisie.litentiers();
^
Puissance4.java:217: cannot find symbol
symbol : variable Saisie
location: class Puissance4
int nbColonne = Saisie.litentiers();
^
Puissance4.java:220: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 2 : la colonne" + nbColonne-1 +" est pleine!choisissez une autre colonne") ;
^
Puissance4.java:221: cannot find symbol
symbol : variable Saisie
location: class Puissance4
nbColonne = Saisie.litentiers();


et voila mon programme :

public class Puissance4
{

// Initialisation de la matrice de donnees
public static void initPlateau ( int [][] matrice )
{
for ( int col = 0 ; col < matrice.length ; col ++)
{
for ( int lig = 0 ; lig < matrice[0].length ; lig ++)
{
matrice [ col ] [ lig ] = 0;
}
}
}


// fonction qui reconnait 4 cases verticales
//joueur 1
public static boolean verticalJ1(int [][] plateau)
{
boolean alignement = false;
for (int i = 0; i<7 ; i=i+1)
{
for (int j = 0; j<3;j=j+1)
{
if (plateau [j][i] == plateau [j+1][i] && plateau [j][i] == plateau [j+2][i] && plateau [j][i] == plateau [j+3][i] && plateau [j][i] == 1)
{
alignement=true;
}
}
}

return alignement;
}

// joueur 2
public static boolean verticalJ2(int [][] plateau)
{
boolean alignement = false;
for (int i = 0; i<7 ; i=i+1)
{
for (int j = 0; j<3;j=j+1)
{
if (plateau [i][j] == plateau [i+1][j] && plateau [i][j] == plateau [i+2][j] && plateau [i][j] == plateau [i+3][j] && plateau [i][j] == 2)
{
alignement=true;
}
}
}

return alignement;
}

// fonction qui reconnait 4 cases horizontales
//joueur 1
public static boolean horizontalJ1(int [][] plateau)
{
boolean alignement = false;
for (int i = 0; i<6 ; i=i+1)
{
for (int j = 0; j<4;j=j+1)
{
if (plateau [i][j] == plateau [i][j+1] && plateau [i][j] == plateau [i][j+2] && plateau [i][j] == plateau [i][j+3] && plateau [i][j] == 1)
{
alignement=true;
}
}
}

return alignement;
}

//joueur 2
public static boolean horizontalJ2(int [][] plateau)
{
boolean alignement = false;
for (int i = 0; i<6 ; i=i+1)

{
for (int j = 0; j<4;j=j+1)
{
if (plateau [i][j] == plateau [i][j+1] && plateau [i][j] == plateau [i][j+2] && plateau [i][j] == plateau [i][j+3] && plateau [i][j] == 2)
{
alignement=true;
}
}
}

return alignement;
}

// fonction qui reconnait 4 cases diagonales
// joueur 1
public static boolean diagonal1(int [][] plateau)
{

boolean alignement=false;
for (int i=0; i<3;i=i+1)
{
for(int j=0;j<4;j=j+1)
{
if (plateau[i][j]==plateau[i+1][j+1] && plateau[i][j]==1 && plateau[i][j]==plateau[i+2][j+2] && plateau[i][j]==plateau[i+3][j+3])
{
alignement=true;
}
}
}
return alignement;
}



public static boolean diagonal2(int [][] plateau)
{
boolean alignement=false;
for(int i=0; i>3;i=i-1)
{
for (int j;j<4;j=j+1)
{
if (plateau[i][j]==plateau[i-1][j+1] && plateau[i][j]==plateau[i-2][j+2] && plateau[i][j]==plateau[i-3][j+3] && plateau[i][j]==1)
{
alignement=true;
}
}
}
return alignement;
}

//joueur2


public static boolean diag1(int[] [] plateau)
{
boolean alignement=false;
for (int i=0; i<3;i=i+1)
{
for(int j=0;j<4;j=j+1)
{
if (plateau[i][j]==plateau[i+1][j+1] && plateau[i][j]==2 && plateau[i][j]==plateau[i+2][j+2] && plateau[i][j]==plateau[i+3][j+3])
{
alignement=true;
}
}
}
return alignement;
}



public static boolean diag2(int[][] plateau)
{
boolean alignement=false;
for(int i=0; i>3;i=i-1)
{
for (int j;j<4;j=j+1)
{
if(plateau[i][j]==plateau[i-1][j+1] && plateau[i][j]==plateau[i-2][j+2] && plateau[i][j]==plateau[i-3][j+3] && plateau[i][j]==2)
{
alignement=true;
}
}
}
return alignement;
}

public static void main (String [] Argv )
{
int nbColonnes = 7 ; // <=> largeur , abscisse ( x )
int nbLignes = 6 ; // <=> hauteur , ordonnee ( y )
int [][] plateau = new int [ nbColonnes ] [ nbLignes ] ;

int [] hauteur = new int [7];// variable précisant le hauteur
for (int i=0;i<7;i=i+1)
{
hauteur [i] = 0;
}

final int J1 = 1 ; // joueur 1
final int J2 = 2 ; // joueur 2

// Initialisation des cases du plateau à 0
initPlateau (plateau) ;

// initialisation de l'interface graphique
Puissance4GUI gui = new Puissance4GUI ( plateau);

gui.modifierMessage ( "Le jeu commence!" ) ;

System.out.println ( "Appuyer sur ENTREE pour continuer " ) ;
Saisie.litexte ();

int nbcase=0;

while (nbcase!=42 )
{

System.out.println ( "Joueur 1 : choisissez le colonne où vous voulez placer le jeton " ) ;
int nbColonne = Saisie.litentier();
if (hauteur[nbColonne-1] > 5)
{
System.out.println ( "Joueur 1 : la colonne" + nbColonne-1 +" est pleine! Choisissez une autre colonne") ;
nbColonne = Saisie.litentier();
plateau [hauteur[nbColonne-1]] [nbColonne-1] = J1;
gui.rafraichirCase ( hauteur[nbColonne-1] , nbColonne-1) ;
}
else
{
plateau [hauteur[nbColonne-1]] [nbColonne-1] = J1;
gui.rafraichirCase ( hauteur[nbColonne-1] , nbColonne-1) ;
}

hauteur[nbColonne-1] = hauteur[nbColonne-1]+1;



System.out.println ( "Joueur 2 : choisissez le colonne où vous voulez placer le jeton " ) ;
int nbColonne = Saisie.litentiers();
if (hauteur[nbColonne-1] > 5)
{
System.out.println ( "Joueur 2 : la colonne" + nbColonne-1 +" est pleine!choisissez une autre colonne") ;
nbColonne = Saisie.litentiers();
plateau [hauteur[nbColonne-1]] [nbColonne-1] = J2;
hauteur[nbColonne-1] = hauteur[nbColonne-1]+1;
gui.rafraichirCase ( hauteur[nbColonne-1] , nbColonne-1) ;
}
else
{
plateau [hauteur[nbColonne-1]] [nbColonne-1] = J2;
hauteur[nbColonne-1] = hauteur[nbColonne-1]+1;
gui.rafraichirCase ( hauteur[nbColonne-1] , nbColonne-1) ;
}
}
}
}


































































A voir également:

4 réponses

irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
15 juin 2010 à 16:09
je vois une erreur au niveau de ta boucle for:

for (int j;j<4;j=j+1)
{
if (plateau[i][j]==plateau[i-1][j+1] && plateau[i][j]==plateau[i-2][j+2] && plateau[i][j]==plateau[i-3][j+3] && plateau[i][j]==1)
{
alignement=true;
}


la il faut que tu initialise ta variable j comma ça:

for (int j=0;j<4;j=j+1)
{
if (plateau[i][j]==plateau[i-1][j+1] && plateau[i][j]==plateau[i-2][j+2] && plateau[i][j]==plateau[i-3][j+3] && plateau[i][j]==1)
{
alignement=true;
}


pour autre chose je vois pas le code de la classe Puissance4GUI
2
merci de votre aide
j'ai resolu mes problemes la il men rerste 2 que je ne comprend pas


Puissance4.java:201: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 1 : la colonne" +numColonne-1+ "est pleine! Choisissez une autre colonne") ;
^
Puissance4.java:220: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 2 : la colonne" +numColonne-1+" est pleine!choisissez une autre colonne") ;

si vous savez ou se trouve le probleme merci de me le dire ^
0
j'ai resolu mes probleme il m'en reste 2 que je ne trouve pas

Puissance4.java:201: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 1 : la colonne" +numColonne-1+ "est pleine! Choisissez une autre colonne") ;
^
Puissance4.java:220: operator - cannot be applied to java.lang.String,int
System.out.println ( "Joueur 2 : la colonne" +numColonne-1+" est pleine!choisissez une autre colonne") ;

si cela vous dit qq chose merci de m'aider
^
0
irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
15 juin 2010 à 16:29
oui t'as une erreur la :
System.out.println ( "Joueur 1 : la colonne" +numColonne-1+ "est pleine! Choisissez une autre colonne") ;

il faut mettre :

System.out.println ( "Joueur 1 : la colonne" +(numColonne-1)+ "est pleine! Choisissez une autre colonne") ;

parce qu'il faut faire ce calcule (numColonne-1) entre () pour qu'il sache que ce n'est pas une chaine de caractère.

dis moi si ca marche
2
irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
15 juin 2010 à 16:31
si tu n'utilise pas eclipse , je te conseille vivement de l'utiliser, toutes ces erreurs il les trouve tout seul et il te propose les solution.
1
j'ai reussi a compiler mai le programme n'est pas bon pour jouer a puissance 4
saurez vous me dire quelles sont mes erreurs,,
0
irmeche Messages postés 71 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 18 juillet 2014 17
16 juin 2010 à 22:26
j'ai pas la totalité de ton programme pour pouvoir le tester, a vrai dire je ne sais pas ce que tu veux faire exactement,
peux tu m'expliquer ce que tu veux faire et l'envoyé tes sources ?
1