Author Topic: Ayuda tablero ajedrez en C  (Read 5458 times)

Lore_Na

  • Newbie
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
Ayuda tablero ajedrez en C
« on: Noviembre 02, 2014, 11:11:18 pm »
Este es mi programa, en lugar de intercalar las B y N casillas lo que hace es una fila de cada (una de B y la siguiente de N)
POE FAVOR necesito ayudaaa! :o

/*Dibujar un tablero de ajedrez con los colores (B) Blanco y
 (N) Negro de un tamaño solicitado al usuario*/


#include <stdio.h>

int main (int argc,char **argv)
{
   //Establecer variables
   int fila, n, columna;
   
   //Mensaje inicio
   printf("Introducir tamaño tablero: ");
   scanf("%d", &n);
   
   //Bucle para el tablero
   for(fila = 0; fila < n; fila++){ 
        for(columna=0; columna < n; columna++)
            if (fila % 2 == 0) { //si la columna es par ->Blanco
            printf("B");
         } else {
            printf("N");
            
         }
        printf("\n"); 
   }
   return 0;
}
Gracias de antemano!
« Last Edit: Noviembre 03, 2014, 04:11:10 pm by Lore_Na »

chuidiang

  • Administrator
  • Hero Member
  • *****
  • Posts: 5472
  • Karma: 12
    • View Profile
    • Apuntes de programación
Re: Ayuda tablero ajedrez en C
« Reply #1 on: Noviembre 03, 2014, 01:22:19 am »
Hola:

Es curioso el comentario este

Code: [Select]
if (fila % 2 == 0) { //si la columna es par ->Blanco
parece que es lo contrario de lo que dice el código (fila en vez de columna).

Una casilla sería blanca, por ejemplo, si fila+columna es par y negra si es impar. Tienes que fijarte en la suma de fila+columna en vez de sólo en fila (o columna).

Se bueno.

Lore_Na

  • Newbie
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
Re: Ayuda tablero ajedrez en C
« Reply #2 on: Noviembre 03, 2014, 01:32:13 am »
 :o :o :o es verdad! qué razón tienes! que tonta yo, mira que lo había repasado mil veces y no era capaz de darme cuenta de mi error y contradicción! ya lo e arreglado y funciona perfecto!
muchisimas gracias!
un saludo.

 

ey