| 
				   | 
				
| Line 1: | 
Line 1: | 
| − | {{code}}
  | + | <a href=http://www.sanalsokagi.net>dizi</a> <a href=http://www.sanalsokagi.net>dizi izle</a> <a href=http://www.sanalsokagi.net>dizi sitesi</a> <a href=http://www.sanalsokagi.net>Film</a> <a href=http://www.sanalsokagi.net>film izle</a> <a href=http://www.sanalsokagi.net>online film</a> <a href=http://www.sanalsokagi.net>dizi seyret</a>  | 
| − |  /* SimpleBoard.java */
  |   | 
| − |  
  |   | 
| − |  /**
  |   | 
| − |  *  Simple class that implements an 8x8 game board with three possible values
  |   | 
| − |   *  for each cell:  0, 1 or 2.
  |   | 
| − |   *
  |   | 
| − |   *  DO NOT CHANGE ANY PROTOTYPES IN THIS FILE.
  |   | 
| − |   **/
  |   | 
| − |  
  |   | 
| − |  public class SimpleBoard {
  |   | 
| − |  	private final static int DIMENSION = 8;
  |   | 
| − |  	private int[][] grid;
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Invariants:  
  |   | 
| − |  	 *  (1) grid.length == DIMENSION.
  |   | 
| − |  	 *  (2) for all 0 <= i < DIMENSION, grid[i].length == DIMENSION.
  |   | 
| − |  	 *  (3) for all 0 <= i, j < DIMENSION, grid[i][j] >= 0 and grid[i][j] <= 2.
  |   | 
| − |  	 **/
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Construct a new board in which all cells are zero.
  |   | 
| − |  	 */
  |   | 
| − |  	
  |   | 
| − |  	public SimpleBoard() {
  |   | 
| − |  		grid = new int[DIMENSION][DIMENSION];
  |   | 
| − |  	}
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Set the cell (x, y) in the board to the given value mod 3.
  |   | 
| − |  	 *  @param value to which the element should be set (normally 0, 1, or 2).
  |   | 
| − |  	 *  @param x is the x-index.
  |   | 
| − |  	 *  @param y is the y-index.
  |   | 
| − |  	 *  @exception ArrayIndexOutOfBoundsException is thrown if an invalid index
  |   | 
| − |  	 *  is given.
  |   | 
| − |  	 **/
  |   | 
| − |  	
  |   | 
| − |  	public void setElementAt(int x, int y, int value) {
  |   | 
| − |  		grid[x][y] = value % 3;
  |   | 
| − |  		if (grid[x][y] < 0) {
  |   | 
| − |  			grid[x][y] = grid[x][y] + 3;
  |   | 
| − |  		}
  |   | 
| − |  	}
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Get the valued stored in cell (x, y).
  |   | 
| − |  	 *  @param x is the x-index.
  |   | 
| − |  	 *  @param y is the y-index.
  |   | 
| − |  	 *  @return the stored value (between 0 and 2).
  |   | 
| − |  	 *  @exception ArrayIndexOutOfBoundsException is thrown if an invalid index
  |   | 
| − |  	 *  is given.
  |   | 
| − |  	 */
  |   | 
| − |  	
  |   | 
| − |  	public int elementAt(int x, int y) {
  |   | 
| − |  		return grid[x][y];
  |   | 
| − |  	}
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Returns true if "this" SimpleBoard and "board" have identical values in
  |   | 
| − |  	 *    every cell.
  |   | 
| − |  	 *  @param board is the second SimpleBoard.
  |   | 
| − |  	 *  @return true if the boards are equal, false otherwise.
  |   | 
| − |  	 */
  |   | 
| − |  	
  |   | 
| − |  	public boolean equals(Object board) {
  |   | 
| − |  		if (board.getClass() == this.getClass()) {
  |   | 
| − |  			return (this.hashCode() == board.hashCode());
  |   | 
| − |  		} else {
  |   | 
| − |  			return false;
  |   | 
| − |  		}
  |   | 
| − |  	}
  |   | 
| − |  	
  |   | 
| − |  	/**
  |   | 
| − |  		*  Returns a hash code for this SimpleBoard.
  |   | 
| − |  	 *  @return a number between Integer.MIN_VALUE and Integer.MAX_VALUE.
  |   | 
| − |  	 */
  |   | 
| − |  	
  |   | 
| − |  	public int hashCode() {
  |   | 
| − |  		int hash = 0;
  |   | 
| − |  		for (int io=0; io<DIMENSION; io++) {
  |   | 
| − |  			for (int ii=0; ii<DIMENSION; ii++) {
  |   | 
| − |  				hash = hash * 3 + grid[io][ii];
  |   | 
| − |  			}
  |   | 
| − |  		}
  |   | 
| − |  		return hash;
  |   | 
| − |  	}
  |   | 
| − |  }
  |   |