GrafikkMatriser.java [Last ned]

/*
 * Programmet bruker en to-dimensjonal tabell til å
 * representere en matrise. En metode speiler matrisa
 * om hoveddiagonalen, og en annen kan skrive ut matrisa
 * grafisk ved hvite (0) eller svarte ruter (1).
 */
public class GrafikkMatriser extends EasyGraphics {
 
  public static void main(String[] args) {
  launch(args);
  }
 
  public void run() {
  makeWindow("Matriser");
 
    int[][] matrise = {{0,0,1,1,1,1,0,0},
                       {0,1,0,0,0,0,1,0},
                       {0,1,0,0,0,0,1,0},
                       {0,0,1,1,1,1,0,0},
                       {0,1,0,0,0,0,1,0},
                       {0,1,0,0,0,0,1,0},
                       {0,1,0,0,0,0,1,0},
                       {0,0,1,1,1,1,0,0}};
    skriv(matrise, 50, 50, 20);
    speile(matrise);
    skriv(matrise, 400, 50, 20);
  }
 
  public void speile(int[][] tab) {
  for (int i=0; i<tab.length; i++)
      for (int j=0; j<i; j++) {
        int h = tab[i][j];
        tab[i][j] = tab[j][i];
        tab[j][i] = h;
      }
  }
 
  public void skriv(int[][] tab, int x, int y, int str) {
  // tab = matrisa,  (x,y) = øvre venstre hjørne for utskrift,
  // str = størrelse på smårute (tegnet 0, eller 1)
    for (int i=0; i<tab.length; i++)
      for (int j=0; j<tab.length; j++) {
        if( tab[i][j] == 0 )
          drawRectangle(x+j*str, y+i*str, str, str);
        else
          fillRectangle(x+j*str, y+i*str, str, str);
        pause(50);
      }
  }
 
}
Kildekode blir vist ved hjelp av GeSHi.