Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/04/2014, 17:11
Avatar de alejandcc
alejandcc
 
Fecha de Ingreso: diciembre-2011
Ubicación: Plasencia
Mensajes: 54
Antigüedad: 12 años, 4 meses
Puntos: 1
movimiento de la reina

Hola a tod@s estoy intentando hacer un programa que simule los posibles movimientos de la reina en ajedrez. El tablero es 8x8. El usuario introduce las coordenadas de la reina, y partiendo de ahi hay que pintar en el tablero con un "*" los posibles movimientos de la reina. En las casillas por las cuales no se mueva validos la reina se escriba B o N (blanca o negra). Yo tengo pintado el tablero con los movimientos en horizontal de la reina, pero no consigo hacer que me pinte los movimientos diagonales. Este es mi codigo:

***************************

public void pintarPosicionReina(int fila, int columna, Tablero t){



for(int i=1;i<9;i++){

for(int j=1;j<9;j++){

//para las filas impares ************************************************** *********
if(i%2!=0){
//la fila en la que este la reina estara toda en asterisco
if(i==fila){
System.out.print("*");
}else{
//la columna en la que este la reina toda en asterisco
if(j==columna)
System.out.print("*");

if(j!=columna){


if(j%2!=0)
System.out.print("B");

else
System.out.print("N");



}

}
//para las filas pares ************************************************** ***********
}else{
//la fila en la que este la reina estara toda en asterisco
if(i==fila){
System.out.print("*");


}else{
//la columna donde este la reina toda en asterisco
if(j==columna)
System.out.print("*");

if(j!=columna){


if(j%2!=0){
System.out.print("N");
}else{
System.out.print("B");
}
}

}

}


}
System.out.println();

}

}

************ fin **************

Gracias de antemano.