Commit c6175c7d by Emanuel Lugo

DETECTA MAS JUGADAS POSIBLES

parent 7116abc8
......@@ -11,19 +11,40 @@ public class Carta {
public Carta (String completo)
{
this.valor = String.valueOf(completo.charAt(0));
if (completo.charAt(0) == 'A') this.valor = "1" ;
else if (completo.charAt(0) == 'T') this.valor = "10" ;
else if (completo.charAt(0) == 'J') this.valor = "11" ;
else if (completo.charAt(0) == 'Q') this.valor = "12" ;
else if (completo.charAt(0) == 'K') this.valor = "13" ;
else this.valor = String.valueOf(completo.charAt(0));
this.palo = String.valueOf(completo.charAt(1));
}
String valorPalo()
{
return this.valor + this.palo;
if (this.valor.equals("1")) {return "A" + " " +this.palo;
}else if (this.valor.equals("10")) {return "T" + " " +this.palo;
} else if (this.valor.equals("11")) {return "J"+ " " +this.palo;
}else if (this.valor.equals("12")) {return "Q"+ " " +this.palo;
} else if (this.valor.equals("13")) {return "K" + " " +this.palo;
}else return this.valor + " " +this.palo;
}
public int getValorInt () {
int aux = Integer.parseInt(this.valor);
return aux;
}
public String getPalo() {
return this.palo;
}
......
......@@ -6,6 +6,8 @@ class SortbyPalo implements Comparator<Carta>
// Ordenar por Palo
public int compare(Carta a, Carta b)
{
// int aux1, aux2;
return a.palo.compareTo(b.palo) ;
}
}
\ No newline at end of file
......@@ -5,7 +5,13 @@ class SortbyValor implements Comparator<Carta>
// Used for sorting in ascending order of
// Ordenar por Palo
public int compare(Carta a, Carta b)
{
return a.valor.compareTo(b.valor) ;
{ int aux1 = a.getValorInt();
int aux2 = b.getValorInt();
if (aux1 > aux2) return 1;
else return -1 ;
}
}
\ No newline at end of file
/** */
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.*;
public class pokerGame {
public String jugadas(Carta manoAux[]){
public String jugadas(ArrayList<Carta> mano){
String resultado;
Collections.sort(mano, new SortbyValor());
int contadorValor = 0;
int contadorPalo = 0;
int valorCarta, valorSgteCarta, aux;
for (int i=0;i<4;i++) {
//System.out.println(mano.get(i).getValorInt() + ": valor carta1");
//System.out.println(mano.get(i+1).getValorInt() + ": valor carta2");
valorCarta = mano.get(i).getValorInt() ; // trae el valor entero contenido en la carta
valorSgteCarta = mano.get(i+1).getValorInt(); // trae el valor entero contenido en la carta siguiente
if (mano.get(i).palo.equals(mano.get(i+1).palo)) contadorPalo++ ;
aux = valorCarta + 1;
if (aux == valorSgteCarta) contadorValor++ ;
System.out.println("contador SECUENCIAL: " + contadorValor);
System.out.println("contador PALOSIGUALES: " + contadorPalo);
}
/*
int contadorPalo = 0;
for (int i=0;i<4;i++) {
//System.out.println("PALO de la carta1: " +mano.get(i).getPalo());
//System.out.println("PALO de la carta2: " +mano.get(i+1).getPalo());
if (mano.get(i).palo.equals(mano.get(i+1).palo)) contadorPalo++ ; // CUENTA CUANTAS CARTAS SON DEL MISMO PALO
System.out.println("contador PALOSIGUALES: " + contadorPalo);
}
*/
if (contadorValor ==3 && mano.get(0).getValorInt() == 1 && mano.get(4).getValorInt() == 13){
return resultado = "ESCALERA COLOR";
} if (contadorValor == 4 && contadorPalo == 4) {
return resultado = "ESCALERA COLOR";
}else if (contadorValor == 4){
return resultado = "ESCALERA";
}else if(contadorPalo == 4){
return resultado = "COLOR";
}
//CASOS PARA POKER Y FULL
int valoresIguales = 0;
valoresIguales = 0;
for (int i=0;i<4;i++) {
if (mano.get(i).getValorInt() == mano.get(i+1).getValorInt() ){
valoresIguales++;
}
}
if (valoresIguales == 3 && mano.get(3).getValorInt() != mano.get(4).getValorInt()) {
return resultado = "POKER";
}else if ((valoresIguales == 2 && mano.get(3).getValorInt() == mano.get(4).getValorInt()) || (valoresIguales == 2 && mano.get(0).getValorInt() == mano.get(1).getValorInt()))
{
return resultado = "FULL";}
else if (valoresIguales == 2){
return resultado = "TRIO";
}
......@@ -20,25 +72,31 @@ public class pokerGame {
return null;
return resultado = "CARTA ALTA";
}
public static void main(String[] args) {
pokerGame poker = new pokerGame();
String resultado;
int i;
Carta carta1, carta2, carta3, carta4, carta5 ;
ArrayList<Carta> mano = new ArrayList<Carta>();
carta1 = new Carta("AS");
carta2 = new Carta("2S");
carta3 = new Carta("3S");
carta4 = new Carta("4S");
carta5 = new Carta("5S");
carta2 = new Carta("TS");
carta3 = new Carta("JS");
carta4 = new Carta("QS");
carta5 = new Carta("KS");
mano.add(carta5) ;
mano.add(carta4) ;
mano.add(carta3) ;
mano.add(carta2) ;
mano.add(carta1) ;
//System.out.println(mano);
System.out.println(mano);
for (i=0; i<mano.size(); i++)
System.out.println(mano.get(i).valorPalo() );
......@@ -59,9 +117,17 @@ public class pokerGame {
for (i=0; i<mano.size(); i++)
System.out.println(mano.get(i).valorPalo());
Collections.sort(mano, new SortbyValor());
System.out.println("") ;
for (i=0; i<mano.size(); i++)
System.out.println(mano.get(i).valorPalo());
resultado = poker.jugadas(mano);
System.out.println(resultado);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment