#ifndef _DEPLACEMENT #define _DEPLACEMENT #include"tableau.h" /*deplacement.h*/ /* * @require * @assign * @ensure détermine si le déplacement est légal ou pas et l'effectue si c'est le cas */ void deplacement(pile **tableau,int N, char *sel, int *tour); /* * @require * @assign * @ensure verifie si le nombre de pièce à deplacer de la case selectionnées est valide */ int nb_a_selectionner(pile **tableau,int i,int j,int *tour); /*@require * @assign * @ensure : verifie si les coordonnées de la case destination est valide pour toutes les pièces à déplacer */ void case_destination(pile **tableau,int N,int i_src,int j_src,int *i_dest,int *j_dest,int nb,int *tour); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour un pion */ int pions(pile **tableau, int i_src,int j_src,int i_dest,int j_dest, int tour); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour un roi */ int roi(int i_src,int j_src,int i_dest,int j_dest); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour une dame */ int dames(int i_src,int j_src,int i_dest,int j_dest); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour une tour */ int tours(int i_src,int j_src,int i_dest,int j_dest); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour un fou */ int fous(int i_src,int j_src,int i_dest,int j_dest); /* * @require * @assign * @ensure : verifie que le déplacement est valide pour un cavalier */ int cavaliers(int i_src,int j_src,int i_dest,int j_dest); /* * @require * @assign * @ensure : effectue le déplacement d'une pile de pion d'une case vers une autre */ void effectuer(pile **tableau,int i_src, int j_src,int i_dest, int j_dest,int nb); #endif