Appel d'une fonction d'une autre classe par la classe qui contient la procédure main
Bonjour,
J'ai un programme à faire pour un cours débutant java sur le sudoku...
On doit faire 3 classes Case.java, Grille.java et Test.java J'ai pu faire les fonctions des différentes classes.
J'ai mis dans public class Test
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| private static void main(String[] args) {
messageaccueil();
switch (nombre)
{
case 1 : chargerJeu();
break;
case 2 : jouerSudoku();
break;
case 3 : quitter();
break;
}
} |
Mais par exemple a fonction jouerSudoku appelle des fonctions se trouvant dans Grille.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| private static void jouerSudoku() {
System.out.println("Veuillez choisir une ligne: ");
int lig = obtenirUnNombre(0,9);
System.out.println("Veuillez choisir une colonne: ");
int col = obtenirUnNombre(0,9);
System.out.println("Veuillez choisir une valeur: ");
int val = obtenirUnNombre(0,9);
boolean okLigne= Grille.estSurLigne(val, lig);
boolean okCol=Grille.estSurColonne(val,col);
boolean okBloc=Grille.estDansLeBloc(val,lig,col);
if(!okLigne || !okCol || !okBloc ){
...
} |
Et j'ai le message que je dois changer la fonction qui est dans Grille par par une fonction static.
Voici la fonction dans la class Grille :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| public boolean estSurLigne(int _valeur, int _ligne) { //donc ajouter public static boolean estSurLigne(int _valeur, int _ligne)
boolean verifierLigne = false;
int j=_ligne;
for (int i=0;i<9;i++){
if(tab1[i][j] == _valeur) {
verifierLigne=true;
}
}
return verifierLigne;
} |
Voici le début de la classe :
Code:
1 2 3 4 5
| public class Grille {
//attributs
int tab1 [][] ;
//constructeur
public Grille(ArrayList<Integer>al){etc.. |
Pourriez-vous m'aider?
Merci beaucoup
Domi