Vai al contenuto

📣 sulla piattaforma e-learning di Codice Inutile sono disponibili i miei corsi: Introduzione alla programmazione e 🆕 Introduzione all'Arte Generativa

Array bidimensionali: esercizio alta difficoltà (soluzione)

📬 Per rimanere aggiornato sui prossimi articoli e su altri contenuti di creative coding, puoi iscriverti a questa newsletter. Per farlo è sufficiente inserire il tuo indirizzo e-mail nel campo qui sotto.

Puoi leggere l'archivio qui. Powered by TinyLetter

Ecco la soluzione all’esercizio di difficoltà media proposto nell’articolo Array bidimensionali.

Esercizio

Partendo dalla soluzione all’esercizio di difficoltà media, sareste in grado di modificarlo ulteriormente per fare in modo che la griglia non sia necessariamente 8×8?

Soluzione

/*
 * Array bidimensionali: esercizio alta difficoltà
 * Federico Pepe, 19.02.2017
 * http://blog.federicopepe.com/processing
 */

void setup() {
  size(480, 480);

  int rows = 16;
  int cols = 16;
  
  boolean[][] scacchiera = new boolean[rows][cols];

  boolean tileColor = false;

  // Riempi i dati
  for (int i = 0; i < rows; i++) {
    for (int j = 0; j < cols; j++) {
      scacchiera[i][j] = tileColor;
      tileColor = !tileColor;
    }
    if(cols % 2 == 0) {
      tileColor = !tileColor;
    }
  }
 

  // Disegna la scacchiera
  float tileSizeX = width/rows;
  float tileSizeY = height/cols;

  for (int i = 0; i < rows; i++) {
    for (int j = 0; j < cols; j++) {
      if (scacchiera[i][j]) {
        fill(0);
      } else {
        fill(255);
      }
      rect(i*tileSizeX, j*tileSizeY, tileSizeX, tileSizeY);
    }
  }
}

void draw() {
}

Processing 2D Array hard

Articolo precedente

Array bidimensionali: esercizio media difficoltà (soluzione)

Articolo successivo

Processing e Ableton: sincronizzare musica e visual via MIDI

Unisciti alla discussione

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.