Advertisement
Guest User

Untitled

a guest
Jun 29th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.86 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.Arrays;
  3. import java.util.Random;
  4.  
  5. /**
  6.  * Paquet de cartes, sans Joker
  7.  *
  8.  * @author Stéphane Lévesque
  9.  * @version 2010-11-02
  10.  */
  11. public class PaquetCartes {
  12.     /**
  13.      * Générateur de nombres aléatoires.
  14.      */
  15.     private static Random generateur = new Random();
  16.     /**
  17.      * Paquet de cartes.
  18.      */
  19.     private static ArrayList<Carte> paquet = new ArrayList<Carte>();
  20.  
  21.     /**
  22.      * Remet les cartes dans le paquet.
  23.      */
  24.     public static void brasser() {
  25.         PaquetCartes.paquet.clear();
  26.         for (Suite suite : Suite.values()) {
  27.             for (Valeur valeur : Valeur.values()) {
  28.                 PaquetCartes.paquet.add(new Carte(valeur, suite));
  29.             }
  30.         }
  31.     }
  32.  
  33.     /**
  34.      * Pige une carte au hasard et l'enlève du paquet.
  35.      *
  36.      * @return La carte pigée.
  37.      */
  38.     public static Carte piger() {
  39.         if (PaquetCartes.paquet.isEmpty()) {
  40.             PaquetCartes.brasser();
  41.         }
  42.         return PaquetCartes.paquet.remove(generateur.nextInt(PaquetCartes.paquet.size()));
  43.     }
  44.  
  45.     /**
  46.      * Trie la main de carte.
  47.      *
  48.      * @param main La main de cartes à trier. Le tableau peut avoir n'importe quelle taille mais doit être rempli. Ce tableau sera modifié lors de l'exécution de la méthode
  49.      */
  50.     public static void trierMain(Carte[] main) {
  51.         Arrays.sort(main);
  52.     }
  53.  
  54.     /**
  55.      * Exemple d'utilisation
  56.      * *
  57.      */
  58.     public static void main(String[] args) {
  59.         int nombreDeDeux = 0;
  60.         int nombreDeTrefles = 0;
  61.  
  62.         PaquetCartes.brasser();
  63.  
  64.         for (int i = 1; i <= 52; i++) {
  65.             Carte carte = PaquetCartes.piger();
  66.             System.out.println(carte);
  67.             // Vérifier la valeur d'une carte
  68.             if (carte.obtenirValeur() == Valeur.DEUX) {
  69.                 nombreDeDeux++;
  70.             }
  71.             // Vérifier la suite d'une carte
  72.             if (carte.obtenirSuite() == Suite.TREFLE) {
  73.                 nombreDeTrefles++;
  74.             }
  75.         }
  76.         System.out.println("Nombre de 2 : " + nombreDeDeux);
  77.         System.out.println("Nombre de trèfles : " + nombreDeTrefles);
  78.  
  79.         // Vérifier si une carte est plus forte qu'une autre en comparant leurs valeurs.
  80.         PaquetCartes.brasser();
  81.         Carte c1 = PaquetCartes.piger();
  82.         Carte c2 = PaquetCartes.piger();
  83.         if (c1.obtenirValeur().compareTo(c2.obtenirValeur()) < 0) {
  84.             System.out.println("Un " + c1 + " est plus faible qu'un " + c2);
  85.         } else if (c1.obtenirValeur().compareTo(c2.obtenirValeur()) == 0) {
  86.             System.out.println("Un " + c1 + " est de même force qu'un " + c2);
  87.         } else {
  88.             System.out.println("Un " + c1 + " est plus fort qu'un " + c2);
  89.         }
  90.  
  91.         // Vérifier si une carte est plus forte qu'une autre en les comparant.
  92.         PaquetCartes.brasser();
  93.         c1 = PaquetCartes.piger();
  94.         c2 = PaquetCartes.piger();
  95.         if (c1.compareTo(c2) < 0) {
  96.             System.out.println("Un " + c1 + " est plus faible qu'un " + c2);
  97.         } else if (c1.compareTo(c2) == 0) {
  98.             System.out.println("Un " + c1 + " est de même force qu'un " + c2);
  99.         } else {
  100.             System.out.println("Un " + c1 + " est plus fort qu'un " + c2);
  101.         }
  102.  
  103.         // Trier une main de 5 cartes
  104.         PaquetCartes.brasser();
  105.         Carte[] main = {PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger()};
  106.         System.out.println("Cartes en main:");
  107.         for (Carte carte : main) {
  108.             System.out.println(carte);
  109.         }
  110.  
  111.         System.out.println("Cartes en main, triées");
  112.         PaquetCartes.trierMain(main);
  113.         for (Carte carte : main) {
  114.             System.out.println(carte);
  115.         }
  116.  
  117.         // Vérifier la valeur précédente d'une carte
  118.         PaquetCartes.brasser();
  119.         Carte c = PaquetCartes.piger();
  120.         System.out.println("Carte pigée: " + c);
  121.         System.out.println("Valeur précédente: " + c.obtenirValeur().valeurPlusFaible());
  122.         //Vérifier la valeur suivante d'une carte
  123.         System.out.println("Valeur suivante: " + c.obtenirValeur().valeurPlusForte());
  124.        
  125.         //=======================================Partie a moi======================================================================
  126.        
  127.             // presenter le programme
  128.        
  129.             System.out.println("Bienvenue au WSOP, le jeu de poker le plus le plus elctrisant de la planete");
  130.             System.out.println("Veillez inscrire votre nom pour debuter une partie");
  131.        
  132.            
  133.             int jetonJ = 100;
  134.             int cagnote = 0;
  135.             int jetonO1 = 100;
  136.             int jetonO2 = 100;
  137.             int jetonO3 = 100;
  138.             String nom;
  139.             nom = Clavier.lireString();
  140.            
  141.             // debut de la partie, brassage et distribution des cartes
  142.             PaquetCartes.brasser();
  143.            
  144.             System.out.println("Vous avez ete aloue 100 jetons, votre partie debute maintenant");
  145.             jetonJ = jetonJ - 5;
  146.             cagnote = cagnote + 5;
  147.             System.out.println("\n");
  148.            
  149.      
  150.                        
  151.             // Carte en main du joueur
  152.            
  153.             System.out.println(nom);
  154.             System.out.println("Jetons = " + jetonJ+" *********************************" + " Cagnote = " + cagnote );
  155.             Carte [] joueur = {PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger()};
  156.             System.out.println("Carte en main");
  157.             PaquetCartes.trierMain(joueur);
  158.             for(Carte carte : joueur){
  159.                 System.out.println(carte);
  160.             }
  161.             System.out.println("\n");
  162.        
  163.            
  164.             // Carte en main du premier ordinateur
  165.             System.out.println("Ordi1:");
  166.             System.out.println("Jetons = " + jetonO1+" *********************************" + " Cagnote = " + cagnote );
  167.             Carte[] Ordi1 = {PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger()};
  168.             System.out.println("Cartes en main");
  169.             PaquetCartes.trierMain(Ordi1);
  170.             for (Carte carte : Ordi1) {
  171.                 System.out.println(carte);
  172.         }
  173.             System.out.println("\n");
  174.            
  175.             // Carte en main du deuxieme ordinateur
  176.             System.out.println("Ordi2");
  177.             System.out.println("Jetons = " + jetonO2+" *********************************" + " Cagnote = " + cagnote );
  178.             Carte [] Ordi2 = {PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger(), PaquetCartes.piger()};
  179.             System.out.println("Carte en main");
  180.             PaquetCartes.trierMain(Ordi2);
  181.             for(Carte carte : Ordi2){
  182.                 System.out.println(carte);
  183.         }
  184.             System.out.println("\n");
  185.            
  186.             // Carte en main du troisieme ordinateur
  187.            
  188.             System.out.println("Ordi3");
  189.             System.out.println("Jetons = " + jetonO3+" *********************************" + " Cagnote = " + cagnote );
  190.             System.out.println("Carte en main");
  191.             int nbTrefleOrdi3 = 0;
  192.            
  193.  
  194.             for(int i = 0; i < 5 ; i++){
  195.                 Carte [] Ordi3 = {PaquetCartes.piger()};
  196.                 PaquetCartes.trierMain(Ordi3);  
  197.                 for(Carte carte : Ordi3){
  198.                 System.out.println(carte);
  199.                
  200.             }
  201.             // verifier les trefle
  202.             if(Ordi3.obtenirSuite() == Suite.TREFLE) {
  203.                 nbTrefleOrdi3++;
  204.            
  205.             }
  206.            
  207.         }
  208.         System.out.println("Nombre de trèfles : " + nbTrefleOrdi3);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement