public class Application { // static void colorieEnNoir(PieceEchiquier pe, int nbreCouches) { // pe.couleur="Noir"; // nbreCouches=0; // } public static void main(String[] args) { // System.out.println("Hello world !"); PieceEchiquier pe = new PieceEchiquier(); // test consruction PieceEchiquier tour = new PieceEchiquier("tour"); tour.afficheInformations() ; PieceEchiquier fou = new PieceEchiquier("fou","noir",'g',6); fou.afficheInformations() ; PieceEchiquier roi = new PieceEchiquier("roi","blanc",'k',6); roi.afficheInformations(); // test mouvements System.out.println("fou bouge horizontalement : " + fou.bougeHorizontalement(-2)); fou.afficheInformations(); System.out.println("tour bouge verticalement : " + tour.bougeVerticalement(7)); tour.afficheInformations(); System.out.println("roi bouge horizontalement : " + roi.bougeHorizontalement(-5)); roi.afficheInformations(); System.out.println("roi bouge verticalement : " + roi.bougeVerticalement(+6)); roi.afficheInformations(); } } class PieceEchiquier { private String couleur="blanc"; private String nom; private int positionHorizontale='a'; private int positionVertivale=1; public PieceEchiquier() { } public PieceEchiquier(String nom,String couleur,int posH,int posV) { this.couleur = couleur; this.nom = nom; if (!positionHorizontaleEstValide(posH)) { System.out.println("Position horizontale non valide. Initialisée avec 'a'."); }else{ this.positionHorizontale=posH; } if (!positionVerticaleEstValide(posV)) { System.out.println("Position verticale non valide. Initialisée avec '1'."); }else{ this.positionVertivale = posV; } } public PieceEchiquier(String nom) { this.nom = nom; } public PieceEchiquier(String nom,String couleur) { this.couleur = couleur; this.nom = nom; } static boolean positionHorizontaleEstValide(int posHor){ if (posHor >= 'a' && posHor <='h') {return true; } else { return false; } } static boolean positionVerticaleEstValide(int posVert){ if (posVert>=1 && posVert<=8) { return true; } else { return false; } } boolean bougeHorizontalement (int nbreCases){ if (positionHorizontaleEstValide(this.positionHorizontale+nbreCases)) { positionHorizontale=this.positionHorizontale+nbreCases; } else { System.out.println("Pièce H laissée à sa place"); } return true; } boolean bougeVerticalement (int nbreCases){ if (positionVerticaleEstValide(this.positionVertivale+nbreCases)) { positionVertivale=this.positionVertivale+nbreCases; } else { System.out.println("Pièce laissée V à sa place"); } return true; } void afficheInformations (){ System.out.println("Nom de la pièce: "+nom); System.out.println("Couleur : "+ couleur); System.out.println("Position H de la pièce: "+(char)positionHorizontale); System.out.println("Position V de la pièce: "+positionVertivale); } } /* on obtient : Nom de la pièce: tour Couleur : blanc Position H de la pièce: a Position V de la pièce: 1 Nom de la pièce: fou Couleur : noir Position H de la pièce: g Position V de la pièce: 6 Position horizontale non valide. Initialisée avec 'a'. Nom de la pièce: roi Couleur : blanc Position H de la pièce: a Position V de la pièce: 6 fou bouge horizontalement : true Nom de la pièce: fou Couleur : noir Position H de la pièce: e Position V de la pièce: 6 tour bouge verticalement : true Nom de la pièce: tour Couleur : blanc Position H de la pièce: a Position V de la pièce: 8 Pièce H laissée à sa place roi bouge horizontalement : true Nom de la pièce: roi Couleur : blanc Position H de la pièce: a Position V de la pièce: 6 Pièce laissée V à sa place roi bouge verticalement : true Nom de la pièce: roi Couleur : blanc Position H de la pièce: a Position V de la pièce: 6 */