Ajout de la classe BuildGrid

This commit is contained in:
MAX0996 2021-02-01 19:29:32 +01:00 committed by name
parent d0130802c9
commit e834b25888

View file

@ -4,15 +4,33 @@ import java.util.Arrays;
import java.util.Objects; import java.util.Objects;
public class BuildGrid { public class BuildGrid {
/** Tableau à deux dimension qui va contenir les grilles proposees par le logiciel */
private int m_dim_x;
private int m_dim_y;
private double m_grid[][]; private double m_grid[][];
/** nombre de lignes du tableau, soit le nombre de grilles à jouer que va proposer le tableau */
private int m_dim_x;
/** nombre de colonnes du tableau */
private int m_dim_y;
/* /*
CONSTRUCTOR CONSTRUCTOR
*/ */
/** Constructeur par defaut*/
public BuildGrid()
{
System.out.print("Creating a new grid: ");
m_grid = new double[1][5];
setDimX(1);
setDimY(5);
this.fillWith(0);
System.out.println("Done");
}
/** Constructeur avec parametres (Le tableau cree aura autant de lignes que de colonnes)*/
public BuildGrid(int dim) public BuildGrid(int dim)
{ {
System.out.print("Creating a new grid: "); System.out.print("Creating a new grid: ");
@ -25,6 +43,7 @@ public class BuildGrid {
System.out.println("Done"); System.out.println("Done");
} }
/** Constructeur avec parametres*/
public BuildGrid( int dim_x, int dim_y) public BuildGrid( int dim_x, int dim_y)
{ {
System.out.print("Creating a new grid: "); System.out.print("Creating a new grid: ");
@ -41,21 +60,25 @@ public class BuildGrid {
SETTERS & GETTERS SETTERS & GETTERS
*/ */
/** Methode retournant le nombre de lignes du tableau*/
public int getDimX () public int getDimX ()
{ {
return m_dim_x; return m_dim_x;
} }
/** Methode retournant le nombre de colonnes du tableau*/
public int getDimY () public int getDimY ()
{ {
return m_dim_y; return m_dim_y;
} }
/** Modifie le nombre de lignes du tableau*/
public void setDimX (int value) public void setDimX (int value)
{ {
m_dim_x = value; m_dim_x = value;
} }
/** Modifie le nombre de colonnes du tableau*/
public void setDimY (int value) public void setDimY (int value)
{ {
m_dim_y = value; m_dim_y = value;
@ -65,20 +88,24 @@ public class BuildGrid {
TRANSFORM THE GRID TRANSFORM THE GRID
*/ */
public void putValue(float value, int posX, int posY) /** Methode permettant de mettre a jour la case (X,Y) du tableau avec le parametre 'value'*/
public void putValue(float value, int X, int Y)
{ {
m_grid[posX][posY] = value; m_grid[X][Y] = value;
} }
public double getValue(int posX, int posY) /** Methode permettant de recuperer la valeur de la case (X,Y) du tableau */
public double getValue(int X, int Y)
{ {
return m_grid[posX][posY]; return m_grid[X][Y];
} }
/** Methode renvoyant une reference du tableau */
public double[][] getM_grid() { public double[][] getM_grid() {
return m_grid; return m_grid;
} }
/** Methode permettant d'afficher le contenu du tableau a deux dimension sur un terminal*/
public void displayGrid () public void displayGrid ()
{ {
for (int i = 0; i < getDimX(); i++) { for (int i = 0; i < getDimX(); i++) {
@ -91,6 +118,7 @@ public class BuildGrid {
} }
} }
/** Methode permettant de remplir toutes les cases du tableau avec la valeur du parametre 'value' */
public void fillWith ( float value) public void fillWith ( float value)
{ {
for (int i = 0; i < getDimX(); i++) { for (int i = 0; i < getDimX(); i++) {
@ -100,6 +128,12 @@ public class BuildGrid {
} }
} }
/** Methode permettant de determiner les grilles a jouer que va proposer le systeme reducteur*/
public void systemeReduc(int nb_numeros, int[] serie_de_numeros, float garantie)
{
}
/** Methode surchargee permettant de verifier si deux tableaux sont egaux en comparant leur contenu */
@Override @Override
public boolean equals(Object o) { public boolean equals(Object o) {
if (this == o) return true; if (this == o) return true;
@ -108,6 +142,7 @@ public class BuildGrid {
return m_dim_x == buildGrid.m_dim_x && m_dim_y == buildGrid.m_dim_y && Arrays.equals(m_grid, buildGrid.m_grid); return m_dim_x == buildGrid.m_dim_x && m_dim_y == buildGrid.m_dim_y && Arrays.equals(m_grid, buildGrid.m_grid);
} }
/** Methode assignant un nombre unique a chaque instance de la classe Grid pour les differencier entre elles*/
@Override @Override
public int hashCode() { public int hashCode() {
int result = Objects.hash(m_dim_x, m_dim_y); int result = Objects.hash(m_dim_x, m_dim_y);