Skip to content
Extraits de code Groupes Projets
Valider 7583cca0 rédigé par Loïc DUBARD's avatar Loïc DUBARD :speech_balloon:
Parcourir les fichiers

les pions peuvent avancer de 2 cases au départ

parent f3cd7fc2
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -53,7 +53,7 @@ void case_destination(pile **tableau,int N,int i_src,int j_src, int *i_dest,int
for (i=0 ; i<nb ; i++){
switch (tmp->chaine[0]){
case 'P' :
valide=pions(tableau,i_src,j_src,*i_dest,*j_dest,*tour);
valide=pions(tableau,N,i_src,j_src,*i_dest,*j_dest,*tour);
break;
case 'R' :
valide=roi(i_src,j_src,*i_dest,*j_dest);
......@@ -91,7 +91,7 @@ void case_destination(pile **tableau,int N,int i_src,int j_src, int *i_dest,int
}
}
int pions(pile **tableau,int i_src,int j_src,int i_dest,int j_dest,int tour)
int pions(pile **tableau,int N,int i_src,int j_src,int i_dest,int j_dest,int tour)
{
int k=0;
if ("BN"[tour%2] == 'N'){
......@@ -99,8 +99,13 @@ int pions(pile **tableau,int i_src,int j_src,int i_dest,int j_dest,int tour)
} else {
k=-1;
}
if (nb_de_pion(tableau[i_dest][j_dest],"BN"[tour%2+1])==0 && i_dest==i_src+k && j_dest==j_src){
return 1;
if (nb_de_pion(tableau[i_dest][j_dest],"BN"[tour%2+1])==0 && j_dest==j_src){
if (i_dest==i_src+k)
return 1;
if (i_dest==i_src+k+k && longueur_pile(tableau[i_src+k][j_src])==0){
if (k<0 && i_src==N-2) return 1;
else if (k>0 && i_src==2) return 1;
}
} else if (i_dest==i_src+k && (j_dest==j_src+1 || j_dest==j_src-1)){
return 1;
}
......
......@@ -30,7 +30,7 @@ void case_destination(pile **tableau,int N,int i_src,int j_src,int *i_dest,int *
* @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);
int pions(pile **tableau,int N, int i_src,int j_src,int i_dest,int j_dest, int tour);
/*
* @require
......
Aucun aperçu pour ce type de fichier
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter