diff --git a/app/src/main/java/sudoku/Bloc.java b/app/src/main/java/sudoku/Bloc.java new file mode 100644 index 0000000..39f1e90 --- /dev/null +++ b/app/src/main/java/sudoku/Bloc.java @@ -0,0 +1,15 @@ +package sudoku; + +public class Bloc { + + private final Case[] cases; + + public Bloc(Case[] cases) { + this.cases = cases; + } + + public Case[] getCases() { + return cases; + } + +} diff --git a/app/src/main/java/sudoku/Case.java b/app/src/main/java/sudoku/Case.java new file mode 100644 index 0000000..17dc143 --- /dev/null +++ b/app/src/main/java/sudoku/Case.java @@ -0,0 +1,18 @@ +package sudoku; + +public class Case { + + private Symbole symbole; + + public Case(Symbole symbole) { + this.symbole = symbole; + } + + public Symbole getSymbole() { + return this.symbole; + } + + public void setSymbole(Symbole symbole) { + this.symbole = symbole; + } +} diff --git a/app/src/main/java/sudoku/MultiDoku.java b/app/src/main/java/sudoku/MultiDoku.java new file mode 100644 index 0000000..7561ad1 --- /dev/null +++ b/app/src/main/java/sudoku/MultiDoku.java @@ -0,0 +1,19 @@ +package sudoku; + +import java.util.ArrayList; +import java.util.List; + +/** + * @class MultiDoku + * @brief Représente une grille de Multidoku. + * Une grille de sudoku est un multidoku avec un seul sous-sudoku + */ +public class MultiDoku { + + private final List> sousGrilles; + + public MultiDoku(List> symboles) { + this.sousGrilles = new ArrayList<>(); + } + +} diff --git a/app/src/main/java/sudoku/Sudoku.java b/app/src/main/java/sudoku/Sudoku.java new file mode 100644 index 0000000..a5d8567 --- /dev/null +++ b/app/src/main/java/sudoku/Sudoku.java @@ -0,0 +1,27 @@ +package sudoku; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * @class Sudoku + * @brief Représente une grille de sudoku avec N symboles + */ +public class Sudoku { + + private final List> symboles; + private final List> blocs; + private final List> cases; + + public Sudoku(List> symboles) { + this.symboles = symboles; + // initialisation des cases + this.cases = new ArrayList<>(this.symboles.size() * this.symboles.size()); + Collections.fill(this.cases, new Case<>(null)); + // initialisation des blocs + this.blocs = new ArrayList<>(this.symboles.size()); + Collections.fill(this.blocs, new Bloc<>(null)); + } + +} diff --git a/app/src/main/java/sudoku/Symbole.java b/app/src/main/java/sudoku/Symbole.java new file mode 100644 index 0000000..fd51d68 --- /dev/null +++ b/app/src/main/java/sudoku/Symbole.java @@ -0,0 +1,15 @@ +package sudoku; + +public class Symbole { + + private final S valeur; + + public Symbole(S valeur) { + this.valeur = valeur; + } + + public S getValeur() { + return valeur; + } + +}