// File: Palude.java
// Time-stamp: "2003-02-17 23:37:17 calvanes"
// Scopo: rappresentazione di una palude
//        usata per il problema dell'attraversamento


public class Palude {

  private boolean[][] palude;

  public Palude(int righe, int colonne, double probTerra) {
    palude = new boolean[righe][colonne];
    for (int r = 0; r < righe; r++)
      for (int c = 0; c < colonne; c++)
        palude[r][c] = (Math.random() < probTerra);
  }

  public int getNumRighe() {
    return palude.length;
  }

  public int getNumColonne() {
    return palude[0].length;
  }

  public boolean terra(int r, int c) {
    return (r >= 0) && (r < palude.length) &&
      (c >= 0) && (c < palude[0].length) &&
      palude[r][c];
  }

  public String toString() {
    String ris = "";
    for (int r = 0; r < palude.length; r++) {
      for (int c = 0; c < palude[0].length; c++)
        ris = ris + (palude[r][c]? "*" : "o");
      ris = ris + "\n";
    }
    return ris;
  }
}
