Hacer un damero en Java!

Hola, tengo un problema: debo hacer un damero en Java con Processing usando bucles for y condiciones if/else, pero no me sale; me salen líneas negras y blancas... Creo que el problema está en anidar mal los bucles for... Pero no logro corregirlo...

Configuración: Windows / Edge 15.15063

3 respuestas

  1. Moderador
    Gracias por pegar el código directamente, ya que una imagen es inusable.
    (Nota, espero eso antes de proponer una solución)

    --
    Intervengo principalmente en VB6 y VB.NET, con un poco de C#, pero la moderación a menudo me lleva a otros lenguajes.
    En VB.NET piensa en activar "Option Explicit" y "Option Strict"
    0
    1. size(500,500); for(int i=0; i<10; i++){ if(i%2!=0){ noStroke(); fill(255,255,255); } else{ noStroke(); fill(0,0,0); } for(int j=0; j<10; j++){ if(j%2!=0){ noStroke(); fill(255); } else{ noStroke(); fill(0); } rect(50*j,50*i,50,50);}}
      0
  2. Moderador
    Hola,

    Sería bueno usar el formato automático (Ctrl+T) para ver bien la anidación de los bloques entre sí. Mirando tu código así parece que las iteraciones se van siguiendo, cuando en realidad están una dentro de la otra.

    Además, tu primer if no sirve de nada ya que la segunda for irá a redibujar de todos modos encima.

    En cualquier caso, no puedes determinar si una celda es blanca o negra únicamente con su fila o su columna; necesitas ambas informaciones al mismo tiempo para saber qué color dibujar.

    Observación: como siempre tienes noStroke, no tiene sentido ponérselo cada vez, basta con hacerlo una vez al principio.
    --
    La confianza no excluye el control
    0
    1. Muchas gracias, lo intentaré de nuevo.
      0
  3. si hay manera de hacer un damero pero es una cuestión de if, hace falta 3 if, entonces 2 anidados, voy a buscar el código
    -1