diff --git b/.idea/codeStyles/Project.xml a/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..1bec35e --- /dev/null +++ a/.idea/codeStyles/Project.xml @@ -0,0 +1,10 @@ + + + + + + + + \ No newline at end of file diff --git b/.idea/codeStyles/codeStyleConfig.xml a/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ a/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git b/.idea/kotlinc.xml a/.idea/kotlinc.xml new file mode 100644 index 0000000..16533ee --- /dev/null +++ a/.idea/kotlinc.xml @@ -0,0 +1,10 @@ + + + + + + + \ No newline at end of file diff --git b/.idea/libraries/KotlinJavaRuntime.xml a/.idea/libraries/KotlinJavaRuntime.xml new file mode 100644 index 0000000..1a7265d --- /dev/null +++ a/.idea/libraries/KotlinJavaRuntime.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git b/.idea/misc.xml a/.idea/misc.xml new file mode 100644 index 0000000..0548357 --- /dev/null +++ a/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git b/.idea/modules.xml a/.idea/modules.xml new file mode 100644 index 0000000..de24c65 --- /dev/null +++ a/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git b/.idea/workspace.xml a/.idea/workspace.xml new file mode 100644 index 0000000..7bbcf81 --- /dev/null +++ a/.idea/workspace.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git b/Poker.iml a/Poker.iml new file mode 100644 index 0000000..245d342 --- /dev/null +++ a/Poker.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git b/out/production/Poker/META-INF/Poker.kotlin_module a/out/production/Poker/META-INF/Poker.kotlin_module new file mode 100644 index 0000000..9b8711a Binary files /dev/null and a/out/production/Poker/META-INF/Poker.kotlin_module differ diff --git b/out/production/Poker/Poker/Paloss.class a/out/production/Poker/Poker/Paloss.class new file mode 100644 index 0000000..ee155b4 Binary files /dev/null and a/out/production/Poker/Poker/Paloss.class differ diff --git b/out/production/Poker/Poker/PokerKt$main$$inlined$compareBy$1.class a/out/production/Poker/Poker/PokerKt$main$$inlined$compareBy$1.class new file mode 100644 index 0000000..e734924 Binary files /dev/null and a/out/production/Poker/Poker/PokerKt$main$$inlined$compareBy$1.class differ diff --git b/out/production/Poker/Poker/PokerKt.class a/out/production/Poker/Poker/PokerKt.class new file mode 100644 index 0000000..97012e9 Binary files /dev/null and a/out/production/Poker/Poker/PokerKt.class differ diff --git b/out/production/Poker/Poker/jugadas.class a/out/production/Poker/Poker/jugadas.class new file mode 100644 index 0000000..60a79e9 Binary files /dev/null and a/out/production/Poker/Poker/jugadas.class differ diff --git b/src/Poker/Poker.kt a/src/Poker/Poker.kt new file mode 100644 index 0000000..7718332 --- /dev/null +++ a/src/Poker/Poker.kt @@ -0,0 +1,79 @@ +package Poker + +import Poker.Paloss.palos + +object Paloss { + val palos = arrayOf( + 'S','D','H','C' + ) +} +data class jugadas(val valor: Char, val palos: Char) + + + + +fun esjugada(resultado : List): String{ + + var sonpalos = arrayOf(0,0,0,0) + var vecesplay = arrayOf(0,0,0,0,0,0,0,0,0,0,0,0,0) + var result: String = "NADA" + + for (paloss in resultado){ + when(paloss.palos){ + 'S' -> sonpalos[1] 'C' -> sonpalos[2] 'D' -> sonpalos[3] 'H' -> sonpalos[4] + } + } + for (valores in resultado){ + when(valores.valor){ + 'A' -> vecesplay[1] '2' -> vecesplay[2] '3' -> vecesplay[3] '4' -> vecesplay[4] '5' -> vecesplay[5] '6' -> vecesplay[6] '7' -> vecesplay[7] '8' -> vecesplay[8] '9' -> vecesplay[9] 'T' -> vecesplay[10] 'J' -> vecesplay[11] 'Q' -> vecesplay[12] 'K' -> vecesplay[13] + } + } + + for (palos in sonpalos){ + if (palos == 5){ + result = "COLOR" + for (position in vecesplay.indices){ + result = if (position < 9){ + if (1 == vecesplay[position] && 1 == vecesplay[position+1] && 1 == vecesplay[position+2] && 1 == vecesplay[position+3] && 1 == vecesplay[position+4]) "ESCALERA COLOR" else continue + }else if (position == 9){ + if (1 == vecesplay[position] && 1 == vecesplay[position+1] && 1 == vecesplay[position+2] && 1 == vecesplay[position+3] && 1 == vecesplay[0]) "ESCALERA COLOR REAL" else break + }else break + } + } + } + + var trio = false + var doble = 0 + + for (position in vecesplay.indices) { + if (vecesplay[position] == 5){ + result = "POKER" + break + } else { + if (vecesplay[position] == 4) trio = true + if (vecesplay[position] == 3) doble++ + result = if ((doble == 2) && trio) "FULL" + else if ((doble == 1) && trio) "TRIO" + else if (doble == 1) "PAREJA" + else if (doble == 2) "PAREJA DOBLE" + else "ESCALERA COLOR" + } + } + + return result +} +fun main() { + val jugada = arrayListOf() + + + var mesa : String + + mesa = readLine()!!.toString().toUpperCase() + + + jugada.add(jugadas(valor = mesa[0], palos = mesa[1])) || jugada.add(jugadas(valor = mesa[2], palos = mesa[3])) || jugada.add(jugadas(valor = mesa[4], palos = mesa[5])) || jugada.add(jugadas(valor = mesa[6], palos = mesa[7])) || jugada.add(jugadas(valor = mesa[8], palos = mesa[9])) + println("Ingrese su baraja: ") + val resultado = jugada.sortedWith(compareBy {it.valor}) + println("${esjugada(resultado)}") + +} \ No newline at end of file diff --git b/src/Poker/Preguntas a/src/Poker/Preguntas new file mode 100644 index 0000000..10d04d9 --- /dev/null +++ a/src/Poker/Preguntas @@ -0,0 +1,33 @@ + PREGUNTAS + + 2.1. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener una escalera de color? + La probabilidad de que salga una escalera de color es de 36 entre 2.598.960. + Porcentualmente es del 0.0015%. + + 2.2. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener un poker? + La probabilidad de obtener poker de 624 entre 2.598.960. + Porcentualmente es del 0.024%. + + 2.3. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener un full house? + La probabilidad de obtener full house es de 3.744 entre 2.598.960. + Porcentualmente es del 0.14%. + + 2.4. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener una escalera? + La probabilidad de obtener una escalera es de 10.200 entre 2.598.960. + Porcentualmente es del 0.39%. + + 2.5. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener un trio? + La probabilidad de obtener un trio en una jugada es de 54.912 entre 2.598.960. + Porcentualmente es del 2.11%. + + 2.6. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener un par doble? + La probabilidad de obtener un par doble es de 123.552 entre 2.598.960. + Porcentualmente es del 4.75%. + + 2.7. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de obtener un par? + La probabilidad de obtener un par simple es de 1.098.240 entre 2.598.960. + Porcentualmente es del 42.25%. + + 2.8. Si se mezclan y reparten cartas al azar: ¿Cuál es la probabilidad de no obtener ninguna de las jugadas anteriores? + La probabilidad de no tener ninguna de las jugadas anteriores es de 1.302.540 entre 2.598.960. + Porcentualemente es del 50.3345%. \ No newline at end of file