Commit 7fe40518 by Jose Baez

Poker2 final 1.0

parent 2f079f95
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
public class Carta {
private String valor;
......@@ -70,8 +71,8 @@ public class Carta {
}
public void paloAleatorio(){
int max = 1;
int min = 4;
int max = 4;
int min = 1;
int range = max - min + 1;
int rand = (int)(Math.random() * range) + min;
for (int i = 0; i < 1; i++) {
......@@ -90,4 +91,24 @@ public class Carta {
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Carta carta = (Carta) o;
return Objects.equals(valor, carta.valor) && Objects.equals(palo, carta.palo);
}
@Override
public int hashCode() {
return Objects.hash(valor, palo);
}
@Override
public String toString() {
return "Carta{" +
"valor='" + valor + '\'' +
", palo='" + palo + '\'' +
'}';
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.w3c.dom.ls.LSOutput;
import java.util.*;
public class Juego {
List<Integer> valores = null;
public Juego() {
}
public String mano1VsMano2(int carta1, int carta2) {
if(carta1 > carta2){
return "1";
}else if(carta1 < carta2){
return "2";
} else if (carta1==carta2) {
return "SON IGUALES";
}
return "NO HAY GANADOR";
public int mano1VsMano2(int carta1, int carta2) {
if (carta1 > carta2) {
return 1;
} else if (carta1 < carta2) {
return 2;
} else if (carta1 == carta2) {
return 0;
}
return 0;
}
public void desempateCarta(int cartas1, int cartas2) {
if (cartas1 > cartas2) {
System.out.println("1");
}
System.out.println("2");
}
public int sumaManoValores(Carta[] cartas) {
List<Integer> valores = new ArrayList<>();
int contador = 0;
for (Carta c : cartas) {
valores.add(convertirValorStringAInteger(c.getValor()));
contador++;
}
return contador;
}
public int juegosPosibles(List<Carta> cartas) {
boolean siguiente = true;
if (escaleraColor(cartas)) {
......@@ -31,7 +50,7 @@ public class Juego {
}
if (siguiente && full(cartas)) {
siguiente = false;
System.out.println("ESCALERA COLOR");
System.out.println("FULL");
return 7;
}
if (siguiente && escalera(cartas)) {
......@@ -303,13 +322,13 @@ public class Juego {
int valor = 0;
if (carta.equals("A")) {
return valor = 1;
}else if (carta.equals("T")) {
} else if (carta.equals("T")) {
return valor = 10;
}else if (carta.equals("J")) {
} else if (carta.equals("J")) {
return valor = 11;
}else if (carta.equals("Q")) {
} else if (carta.equals("Q")) {
return valor = 12;
}else if (carta.equals("K")) {
} else if (carta.equals("K")) {
return valor = 13;
}
return Integer.valueOf(carta);
......@@ -324,5 +343,86 @@ public class Juego {
return value;
}
public int isRepetidos(Carta[] m1, Carta[] m2) {
Carta[] m3 = new Carta[10];
Set<Carta> cartas = new HashSet<>();
int c = 5;
for (int i = 0; i < m3.length; i++) {
if (i < 5) {
//m3[i]=m1[i];
cartas.add(m1[i]);
} else if (i > 4) {
//m3[i]=m1[c];
cartas.add(m2[i - c]);
//c++;
}
}
return cartas.size();
}
public Carta[] cambiarMano1(Carta[] m1) {
int max = 3;
int min = 1;
int range = max - min + 1;
int rand = (int) (Math.random() * range) + min;
if (rand == 1) {
return m1 = new Carta[]{
new Carta("AS"),
new Carta("2S"),
new Carta("4S"),
new Carta("6S"),
new Carta("8S")};
} else if (rand == 2) {
return m1 = new Carta[]{
new Carta("KH"),
new Carta("2H"),
new Carta("5C"),
new Carta("TS"),
new Carta("JS")};
}else {
return m1 = new Carta[]{
new Carta("JC"),
new Carta("2H"),
new Carta("5S"),
new Carta("TC"),
new Carta("JS")};
}
}
public Carta[] cambiarMano2(Carta[] m2) {
int max = 3;
int min = 1;
int range = max - min + 1;
int rand = (int) (Math.random() * range) + min;
if (rand == 1) {
return m2 = new Carta[]{
new Carta("AK"),
new Carta("TC"),
new Carta("5H"),
new Carta("TH"),
new Carta("JH")};
}else if(rand == 2){
return m2 = new Carta[]{
new Carta("AC"),
new Carta("6C"),
new Carta("7H"),
new Carta("8H"),
new Carta("9H")};
}else {
return m2 = new Carta[]{
new Carta("TH"),
new Carta("9C"),
new Carta("5"),
new Carta("TH"),
new Carta("JH")};
}
}
}
......@@ -38,6 +38,12 @@ public class MyClass {
m2[3] = new Carta();
m2[4] = new Carta();
System.out.println(j.isRepetidos(m1,m2));
if(j.isRepetidos(m1,m2) < 10){
m1=j.cambiarMano1(m1);
m2=j.cambiarMano2(m2);
}
jugadas.add(m1);
jugadas.add(m2);
String ganadores = mc.ganadores(jugadas);
......@@ -47,7 +53,12 @@ public class MyClass {
int valor = j.juegosPosibles(Arrays.asList(m1[0], m1[1] , m1[2] , m1[3] , m1[4] ));
System.out.print("Jugada 2 = ");
int valor2 = j.juegosPosibles(Arrays.asList(m2[0], m2[1] , m2[2] , m2[3] , m2[4] ));
System.out.println("GANADOR JUGADA # "+ j.mano1VsMano2(valor,valor2));
//Si son iguales realiza un desempate
if(j.mano1VsMano2(valor,valor2) == 0){
System.out.print("Desempate Gana jugada # ");
j.desempateCarta(j.sumaManoValores(m1),j.sumaManoValores(m2));
}
}
}
\ No newline at end of file
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