Advertisement
Guest User

hace mas frio que en el cumple de pingu

a guest
Feb 26th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.08 KB | None | 0 0
  1. //Queremos hacer una o mas partidas de blackjack en la que el programa siga un conjunto de reglas entre las cuales están:
  2. //El jugador podra pedir numeros hasta plantarse o sobrepasar los 21. Si el jugador sobrepasa 21 automaticamente pierde la partida.
  3. //Si al jugador le toca 1(as) se suman 11 puntos y las figuras 11(J), 12(Q), 13(K) tendran el valor de 10 puntos.
  4. //La maquina pedira cartas y se plantara a partir de 17 puntos. Quien se acerque mas a 21 ganara.
  5. //Si la maquina se pasa de 21 perdera.
  6. //Guardaremos en una array todas las cartas disponibles para que así controlaremos que no puedan salir más de 4 cartas con el mismo numero.
  7.  
  8. package Joc_Daus;
  9. import java.util.Scanner;
  10.  
  11. public class BlackjackA_Grup {
  12.     private static int MIDA = 52;
  13.    
  14.     public static void main (String [] args) {
  15.        
  16.         Scanner Entrada = new Scanner(System.in);
  17.         int[] Deck = new int[MIDA];
  18.        
  19.         //Omplir array i desordenarla
  20.         int index;
  21.         int index4;
  22.         int indexR1;
  23.         int indexR2;
  24.         int ajuda;
  25.         int OmplirCarta = 1;
  26.        
  27.         //Joc
  28.         char Torna = 'Y';
  29.         char Nova;
  30.         int Partida = 1;
  31.         int Carta;
  32.         int indexCarta;
  33.         boolean Perdut;
  34.        
  35.         int CartesJ = 0;
  36.         int CartesM = 0;
  37.  
  38.         //Posem 4 cartes de cada tipus a la array
  39.         for (index = 0; index <= MIDA; index = index + 4) {
  40.            
  41.             if (index <= 48) {
  42.                 for (index4 = index; index4 < index + 4; index4++) {
  43.                    
  44.                     Deck[index4] = OmplirCarta;
  45.                 }
  46.             }
  47.            
  48.             OmplirCarta++;
  49.         }
  50.        
  51.         //Intercambiem posicións aleatories
  52.         indexR1 = (int) (Math.random() * MIDA);
  53.         indexR2 = (int) (Math.random() * MIDA);
  54.         for (index = 0; index < MIDA; index++) {
  55.            
  56.             ajuda = Deck[indexR1];
  57.             Deck[indexR1] = Deck[indexR2];
  58.             Deck[indexR2] = ajuda;
  59.  
  60.             indexR1 = (int) (Math.random() * MIDA);
  61.             indexR2 = (int) (Math.random() * MIDA);
  62.             }
  63.        
  64.         while (Torna == 'Y' || Torna == 'y') {
  65.            
  66.             System.out.println("Benvingut al BlackJack");
  67.             System.out.println();
  68.             System.out.println("Partida " + Partida);
  69.             System.out.println();
  70.            
  71. //          Cartas Jugador
  72.             do {
  73.                    
  74.                 System.out.println("Nova carta");
  75.                
  76.                 indexCarta = (int) (Math.random() * MIDA);
  77.                 Carta = Deck[indexCarta];
  78.                 Deck[indexCarta] = 0;
  79.                
  80.                 if (Carta == 1) {
  81.                    
  82.                     Carta = 11;
  83.                 }else if (Carta == 11 || Carta == 12 || Carta == 13) {
  84.                    
  85.                     Carta = 10;
  86.                 }
  87.                
  88.                 CartesJ = CartesJ + Carta;
  89.                 System.out.println("Jugador tens " + CartesJ);
  90.                 if (CartesJ > 21) {
  91.                    
  92.                     System.out.println("Has perdut! la banca guanya");
  93.                     Nova = 'N';
  94.                     Perdut = true;
  95.                 }else {
  96.                 System.out.print("Vols un altre carta? (Y per a si, altre caracter per a plantarse)");
  97.                 System.out.println();
  98.                 Nova = Entrada.nextLine().charAt(0);
  99.                 Perdut = false;
  100.                 }
  101.                
  102.             }while (Nova == 'Y' || Nova == 'y' || Carta == 0);
  103.            
  104. //          Cartas Maquina
  105.             while ((CartesM <= 17)  && (Perdut == false)) {
  106.                
  107.                 indexCarta = (int) (Math.random() * MIDA);
  108.                 Carta = Deck[indexCarta];
  109.                 Deck[indexCarta] = 0;
  110.                
  111.                 if (Carta == 1) {
  112.                    
  113.                     Carta = 11;
  114.                 }else if (Carta == 11 || Carta == 12 || Carta == 13) {
  115.                    
  116.                     Carta = 10;
  117.                 }
  118.                
  119.                 CartesM = CartesM + Carta;
  120.                 if (CartesM > 21) {
  121.                    
  122.                     System.out.println("Has guanyat!, la maquina s'ha pasat de 21!");
  123.                 }
  124.             }
  125.            
  126. //          Final
  127.             if (CartesJ <= 21 && CartesM <= 21) {
  128.                
  129.                 if (CartesJ > CartesM) {
  130.                    
  131.                     System.out.println("Cartas Jugador: " + CartesJ + ", Cartas Maquina: " + CartesM);
  132.                     System.out.println("Has guanyat!");
  133.                 }else if (CartesJ == CartesM) {
  134.                    
  135.                     System.out.println("Cartas Jugador: " + CartesJ + ", Cartas Maquina: " + CartesM);
  136.                     System.out.println("Heu empatat!");
  137.                 }else {
  138.                    
  139.                     System.out.println("Cartas Jugador: " + CartesJ + ", Cartas Maquina: " + CartesM);
  140.                     System.out.println("Has Perdut!");
  141.                 }
  142.             }
  143. //          Reset
  144.             System.out.println("Vols tornar a jugar? (Y per a si, altre caracter per a plantarse)");
  145.             System.out.println();
  146.             Torna = Entrada.nextLine().charAt(0);
  147.             if (Torna == 'Y' || Torna == 'y') {
  148.                    
  149.                 CartesJ = 0;
  150.                 CartesM = 0;
  151.                 Partida++;
  152.                
  153.                 //Reset Deck
  154.                 OmplirCarta = 1;
  155.                 for (index = 0; index < MIDA; index++) {
  156.                    
  157.                     Deck[index] = 0;
  158.                 }
  159.                
  160.                 //Posem 4 cartes de cada tipus a la array
  161.                 for (index = 0; index <= MIDA; index = index + 4) {
  162.                    
  163.                     if (index <= 48) {
  164.                         for (index4 = index; index4 < index + 4; index4++) {
  165.                            
  166.                             Deck[index4] = OmplirCarta;
  167.                         }
  168.                     }
  169.                    
  170.                     OmplirCarta++;
  171.                 }
  172.                
  173.                 //Intercambiem posicións aleatories
  174.                 indexR1 = (int) (Math.random() * MIDA);
  175.                 indexR2 = (int) (Math.random() * MIDA);
  176.                 for (index = 0; index < MIDA; index++) {
  177.                    
  178.                     ajuda = Deck[indexR1];
  179.                     Deck[indexR1] = Deck[indexR2];
  180.                     Deck[indexR2] = ajuda;
  181.  
  182.                     indexR1 = (int) (Math.random() * MIDA);
  183.                     indexR2 = (int) (Math.random() * MIDA);
  184.                     }
  185.             }
  186.         }
  187.         Entrada.close();
  188.        
  189.        
  190. //      //Debug
  191. //      //Mostrem array de cartes
  192.        
  193. //      for (index = 0; index < MIDA; index++) {
  194. //         
  195. //          System.out.print(Deck[index] + " ");
  196. //      }
  197.        
  198.     }
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement