diff --git a/.idea/TD3_DEV51_Qualite_Algo.iml b/.idea/TD3_DEV51_Qualite_Algo.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/TD3_DEV51_Qualite_Algo.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/.idea/.gitignore b/TD3_DEV51_Qualite_Algo/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/TD3_DEV51_Qualite_Algo/.idea/misc.xml b/TD3_DEV51_Qualite_Algo/.idea/misc.xml new file mode 100644 index 0000000..001e756 --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Controllers/Game.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Controllers/Game.java new file mode 100644 index 0000000..4e626b0 --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Controllers/Game.java @@ -0,0 +1,44 @@ +package Controllers; + +import Models.Word; + +public class Game { + private Word word; + private int errors; + private final int maxErrors = 6; + + public Game(Word word) { + this.word = word; + this.errors = 0; + } + + /* Verify error number */ + public int getErrors() { + return this.errors; + } + /* Put error max */ + public int getMaxErrors() { + return this.maxErrors; + } + + /* Vue call method VerifyLetter, check status letter false/True */ + public boolean playLetter(char c) { + boolean correct = word.VerifyLetter(c); + + if (!correct) { + errors++; + } + + return correct; + } + + /* All letter is completed : Won */ + public boolean isWon() { + return word.IsComplete(); + } + + /* Lost if maxErrors is greater than or egal to errors */ + public boolean isLost() { + return errors >= maxErrors; + } +} \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Main.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Main.java new file mode 100644 index 0000000..f0b628f --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Main.java @@ -0,0 +1,7 @@ +package fr.iutfbleau.TD3_DEV51_Qualite_Algo; + +public class Main { + public static void main(String[] args) { + + } +} \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Lettre.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Lettre.java new file mode 100644 index 0000000..f832d9c --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Lettre.java @@ -0,0 +1,20 @@ +public class Letter{ + private char letter; + private boolean status = false; + + public Letter(char letter){ + this.letter = letter; + } + /* Show status */ + private boolean getStatus(){ + return status + } + /* Verify status true, false */ + private boolean isGood(char c){ + if( this.letter == c){ + this.status = true; + return true; + } + return false; + } +} \ No newline at end of file diff --git a/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java new file mode 100644 index 0000000..43fe63d --- /dev/null +++ b/TD3_DEV51_Qualite_Algo/src/main/java/fr/iutfbleau/TD3_DEV51_Qualite_Algo/Models/Word.java @@ -0,0 +1,49 @@ +import java.util.*; + +public class Word { + private String word; + private Letter[] tabLetter; + private String c; + + private Word(String word){ + this.word = word; + for(int i = 0; i< this.word.length();i++){ + this.tabLetter[i] = Letter(this.word.charAt(i)) + } + } + /* Lettre dans le mot */ + private boolean VerifyLetter(String c){ + boolean return_bool = false; + for(Letter letter in this.tabLetter){ + if(!letter.getStatus()){ + if(letter.isGood(c)){ + return_bool = true; + } + } + } + return return_bool; + } + + /* Le mot a été deviné */ + private boolean IsComplet(){ + if(Letter letter : this.tabLetter){ + if(!letter.getStatus()){ + return false; + } + + } + return true; + } + + + + + + + + + + + + +} \ No newline at end of file