package evaluation;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
// définition de la list de Carte qui contiendra 52 cartes de jeu
List<Carte> paquet52 = new ArrayList<Carte>();
// variables utilisées pour la génération de valeurs aléatoires (pour couleur et valeur)
int couleur, valeur;
boolean bon; // varaible pour boucler tant que la carte générée existe déjà
int n = 0; // comptabilisera le nombre de générer afin de s'arrêter à la génération de 52 cartes
// 1ère boucle pour générer 52 cartes
do
{
bon=false; // initialisation pour entrer dans la 2ème boucle
while (!bon) // 2ème boucle pour générer une carte non déjà existante dans le paquet
{
Carte c = new Carte();
valeur = 1+ (int)(Math.random()*((13-1)+1)); // génération de la valeur de la carte
// affectation d'une valeur à la carte en fonction de la valeur générée
switch(valeur)
{
case 1 : c.setValeur("As");
break;
case 11 : c.setValeur("Valet");
break;
case 12 : c.setValeur("Reine");
break;
case 13 : c.setValeur("Roi");
break;
default : c.setValeur(""+valeur+"");
break;
}
couleur = 1+ (int)(Math.random()*((4-1)+1));
// affectation d'une couleur à la carte en fonction de la couleur (entier) générée
switch(couleur)
{//trèfle(1), coeur(2), pique(3), carreau(4)
case 1 : c.setCouleur("♣");
break;
case 2 : c.setCouleur("\u001b[91m♥\u001b[0m");
break;
case 3 : c.setCouleur("♠");
break;
case 4: c.setCouleur("\u001b[91m◆\u001b[0m");
break;
}
// test si la carte n'est pas déjà présente dans le paquet
if (!Carte.containsCarte(paquet52,c))
{
paquet52.add(c); // ajout de la carte au paquet
bon=true; // modification du booléen pour sortir de la 2ème boucle
}
}
n++;
}while (n<52); // fin 1ère boucle
// affichage pour vérifier que les cartes générées sont différentes dans le paquet
n=1;
for (Carte carte : paquet52) {
System.out.println(n+"-"+carte.toString());
n++;
}
// suite ...
}
}