1. Cargar librerías
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(knitr)
library(gtools)
baraja <- c("A","2","3","4","5","6","7","8","9","10","J","Q","K")
mazo <- rep(baraja,4)

f.repartir.cartas <- function() {
  sample(x = mazo,size = 1)
}

f.determinar.puntos <- function(carta) {
  if (carta == "A") {
    puntos = 11
  } else if (carta == "J" | carta == "Q" | carta == "K") {
    puntos = 10
  } else {
    puntos = as.numeric(carta)
  }
  puntos
}
  1. Cargar cartas
#source("../funciones/mis.funciones.r", encoding = "UTF-8")

 #o bien pueden cargar desde github
#source(" http://juegabien.co/blackjack/.r", encoding = "UTF-8")
  1. Repartir un carta y determinar los puntos sumando los valores de las dos cartas
carta1 <- f.repartir.cartas()
carta2 <- f.repartir.cartas()
paste("La Primer carta que salió es : ",carta1)
## [1] "La Primer carta que salió es :  2"
paste("La Segunada carta que salió es : ",carta2)
## [1] "La Segunada carta que salió es :  7"
paste("Los puntos sumando las dos cartas es : ", f.determinar.puntos(carta1) + f.determinar.puntos(carta2))
## [1] "Los puntos sumando las dos cartas es :  9"
  1. Determinar probabilidades
n <- length(mazo)
n
## [1] 52

##4.1 ¿Cuál es la probabilidad de que salga exactamente el 7 de corazones rojos en la primer carta?.

paste("El número de cartas probable es ", 1)
## [1] "El número de cartas probable es  1"
prob <- 1 / n * 100  # Porcentuales
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  1.92 %"

4.2 ¿Cuál es la probabilidad de que salga un Rey de cualquier figura en la primer carta?

# K
cuantas <- length(mazo[which(mazo == 'K')])
paste("El número de cartas probable es ", cuantas)
## [1] "El número de cartas probable es  4"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  7.69 %"

##4.3 ¿Cuál es la probabilidad de que salga un As en la primer carta repartida?.

# A
cuantas <- length(mazo[which(mazo == 'A')])
paste("El número de cartas probable es ", cuantas)
## [1] "El número de cartas probable es  4"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  7.69 %"

4.4 ¿Cuál es la probabilidad de que en la primer carta se tengan 10 puntos?

cuantas <- length(mazo[which(mazo == '10' | mazo == 'J' | mazo == 'Q' | mazo == 'K')])
cuantas
## [1] 16
paste("El número de cartas probable es ", cuantas)
## [1] "El número de cartas probable es  16"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  30.77 %"

4.5. ¿Cuál es la la probabilidad de que la suma de las dos cartas sea exactamente 20?.

casos <- data.frame(permutations(13,2,baraja, repeats.allowed = TRUE))
names(casos) <- c("C1", "C2")
kable(casos)   
C1 C2
10 10
10 2
10 3
10 4
10 5
10 6
10 7
10 8
10 9
10 A
10 J
10 K
10 Q
2 10
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 A
2 J
2 K
2 Q
3 10
3 2
3 3
3 4
3 5
3 6
3 7
3 8
3 9
3 A
3 J
3 K
3 Q
4 10
4 2
4 3
4 4
4 5
4 6
4 7
4 8
4 9
4 A
4 J
4 K
4 Q
5 10
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
5 A
5 J
5 K
5 Q
6 10
6 2
6 3
6 4
6 5
6 6
6 7
6 8
6 9
6 A
6 J
6 K
6 Q
7 10
7 2
7 3
7 4
7 5
7 6
7 7
7 8
7 9
7 A
7 J
7 K
7 Q
8 10
8 2
8 3
8 4
8 5
8 6
8 7
8 8
8 9
8 A
8 J
8 K
8 Q
9 10
9 2
9 3
9 4
9 5
9 6
9 7
9 8
9 9
9 A
9 J
9 K
9 Q
A 10
A 2
A 3
A 4
A 5
A 6
A 7
A 8
A 9
A A
A J
A K
A Q
J 10
J 2
J 3
J 4
J 5
J 6
J 7
J 8
J 9
J A
J J
J K
J Q
K 10
K 2
K 3
K 4
K 5
K 6
K 7
K 8
K 9
K A
K J
K K
K Q
Q 10
Q 2
Q 3
Q 4
Q 5
Q 6
Q 7
Q 8
Q 9
Q A
Q J
Q K
Q Q
n <- nrow(casos) # El número de opciones
n   # Recordar fórmula de permutaciones
## [1] 169
casos <- casos %>%
  mutate(valor1 = ifelse (C1 == "A", 11, 
                          ifelse(C1 =="J" | C1 == "Q" | C1 == "K",
                                 10,as.numeric(C1)))) 
## Warning: Problem with `mutate()` input `valor1`.
## i NAs introducidos por coerción
## i Input `valor1` is `ifelse(...)`.
## Warning in ifelse(C1 == "J" | C1 == "Q" | C1 == "K", 10, as.numeric(C1)): NAs
## introducidos por coerción
casos <- casos %>%
  mutate(valor2 = ifelse (C2 == "A", 11, 
                          ifelse(C2 =="J" | C2 == "Q" | C2 == "K",
                                 10,as.numeric(C2))))
## Warning: Problem with `mutate()` input `valor2`.
## i NAs introducidos por coerción
## i Input `valor2` is `ifelse(...)`.
## Warning in ifelse(C2 == "J" | C2 == "Q" | C2 == "K", 10, as.numeric(C2)): NAs
## introducidos por coerción
casos <- casos %>%
  mutate(suma = valor1 + valor2)

kable(casos)
C1 C2 valor1 valor2 suma
10 10 10 10 20
10 2 10 2 12
10 3 10 3 13
10 4 10 4 14
10 5 10 5 15
10 6 10 6 16
10 7 10 7 17
10 8 10 8 18
10 9 10 9 19
10 A 10 11 21
10 J 10 10 20
10 K 10 10 20
10 Q 10 10 20
2 10 2 10 12
2 2 2 2 4
2 3 2 3 5
2 4 2 4 6
2 5 2 5 7
2 6 2 6 8
2 7 2 7 9
2 8 2 8 10
2 9 2 9 11
2 A 2 11 13
2 J 2 10 12
2 K 2 10 12
2 Q 2 10 12
3 10 3 10 13
3 2 3 2 5
3 3 3 3 6
3 4 3 4 7
3 5 3 5 8
3 6 3 6 9
3 7 3 7 10
3 8 3 8 11
3 9 3 9 12
3 A 3 11 14
3 J 3 10 13
3 K 3 10 13
3 Q 3 10 13
4 10 4 10 14
4 2 4 2 6
4 3 4 3 7
4 4 4 4 8
4 5 4 5 9
4 6 4 6 10
4 7 4 7 11
4 8 4 8 12
4 9 4 9 13
4 A 4 11 15
4 J 4 10 14
4 K 4 10 14
4 Q 4 10 14
5 10 5 10 15
5 2 5 2 7
5 3 5 3 8
5 4 5 4 9
5 5 5 5 10
5 6 5 6 11
5 7 5 7 12
5 8 5 8 13
5 9 5 9 14
5 A 5 11 16
5 J 5 10 15
5 K 5 10 15
5 Q 5 10 15
6 10 6 10 16
6 2 6 2 8
6 3 6 3 9
6 4 6 4 10
6 5 6 5 11
6 6 6 6 12
6 7 6 7 13
6 8 6 8 14
6 9 6 9 15
6 A 6 11 17
6 J 6 10 16
6 K 6 10 16
6 Q 6 10 16
7 10 7 10 17
7 2 7 2 9
7 3 7 3 10
7 4 7 4 11
7 5 7 5 12
7 6 7 6 13
7 7 7 7 14
7 8 7 8 15
7 9 7 9 16
7 A 7 11 18
7 J 7 10 17
7 K 7 10 17
7 Q 7 10 17
8 10 8 10 18
8 2 8 2 10
8 3 8 3 11
8 4 8 4 12
8 5 8 5 13
8 6 8 6 14
8 7 8 7 15
8 8 8 8 16
8 9 8 9 17
8 A 8 11 19
8 J 8 10 18
8 K 8 10 18
8 Q 8 10 18
9 10 9 10 19
9 2 9 2 11
9 3 9 3 12
9 4 9 4 13
9 5 9 5 14
9 6 9 6 15
9 7 9 7 16
9 8 9 8 17
9 9 9 9 18
9 A 9 11 20
9 J 9 10 19
9 K 9 10 19
9 Q 9 10 19
A 10 11 10 21
A 2 11 2 13
A 3 11 3 14
A 4 11 4 15
A 5 11 5 16
A 6 11 6 17
A 7 11 7 18
A 8 11 8 19
A 9 11 9 20
A A 11 11 22
A J 11 10 21
A K 11 10 21
A Q 11 10 21
J 10 10 10 20
J 2 10 2 12
J 3 10 3 13
J 4 10 4 14
J 5 10 5 15
J 6 10 6 16
J 7 10 7 17
J 8 10 8 18
J 9 10 9 19
J A 10 11 21
J J 10 10 20
J K 10 10 20
J Q 10 10 20
K 10 10 10 20
K 2 10 2 12
K 3 10 3 13
K 4 10 4 14
K 5 10 5 15
K 6 10 6 16
K 7 10 7 17
K 8 10 8 18
K 9 10 9 19
K A 10 11 21
K J 10 10 20
K K 10 10 20
K Q 10 10 20
Q 10 10 10 20
Q 2 10 2 12
Q 3 10 3 13
Q 4 10 4 14
Q 5 10 5 15
Q 6 10 6 16
Q 7 10 7 17
Q 8 10 8 18
Q 9 10 9 19
Q A 10 11 21
Q J 10 10 20
Q K 10 10 20
Q Q 10 10 20

¿En cuántas ocasiones las dos cartas suman 20?

cuales <- filter(casos, suma == 20)
cuantas <- nrow(cuales)

paste("El número de casos probable es que la suma sea 20 es: ", cuantas)
## [1] "El número de casos probable es que la suma sea 20 es:  18"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  10.65 %"

###4.6 Cuál es la probabilidad de que en las dos cartas sumando sus puntos sea menor o igual que 10?

cuales <- filter(casos, suma <= 10)
cuantas <- nrow(cuales)

paste("El número de casos probable para suma menor o igual a 10 es:", cuantas)
## [1] "El número de casos probable para suma menor o igual a 10 es: 28"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  16.57 %"

##4.7. ¿Cuál es la probabilidad de que en las dos cartas sea un valor menor a 5?.

cuales <- filter(casos, suma < 5)
cuantas <- nrow(cuales)

paste("El número de casos probable para suma menor a 5 es:", cuantas)
## [1] "El número de casos probable para suma menor a 5 es: 1"
## [1] "El número de casos probable para suma menor a 5 es: 1"
prob <- cuantas / n * 100
paste("La probabilidad es ", round(prob,2), "%")
## [1] "La probabilidad es  0.59 %"

4.8. ¿Cuál de las combinaciones con la suma de los puntos de las cartas tiene la más alta probabilidad de salir?, es decir, 8, 9, 10, 11, 12…. Cuál puntuación de a suma de las dos cartas es la mas frecuente?

casos %>%
    arrange(desc(suma) )
##     C1 C2 valor1 valor2 suma
## 1    A  A     11     11   22
## 2   10  A     10     11   21
## 3    A 10     11     10   21
## 4    A  J     11     10   21
## 5    A  K     11     10   21
## 6    A  Q     11     10   21
## 7    J  A     10     11   21
## 8    K  A     10     11   21
## 9    Q  A     10     11   21
## 10  10 10     10     10   20
## 11  10  J     10     10   20
## 12  10  K     10     10   20
## 13  10  Q     10     10   20
## 14   9  A      9     11   20
## 15   A  9     11      9   20
## 16   J 10     10     10   20
## 17   J  J     10     10   20
## 18   J  K     10     10   20
## 19   J  Q     10     10   20
## 20   K 10     10     10   20
## 21   K  J     10     10   20
## 22   K  K     10     10   20
## 23   K  Q     10     10   20
## 24   Q 10     10     10   20
## 25   Q  J     10     10   20
## 26   Q  K     10     10   20
## 27   Q  Q     10     10   20
## 28  10  9     10      9   19
## 29   8  A      8     11   19
## 30   9 10      9     10   19
## 31   9  J      9     10   19
## 32   9  K      9     10   19
## 33   9  Q      9     10   19
## 34   A  8     11      8   19
## 35   J  9     10      9   19
## 36   K  9     10      9   19
## 37   Q  9     10      9   19
## 38  10  8     10      8   18
## 39   7  A      7     11   18
## 40   8 10      8     10   18
## 41   8  J      8     10   18
## 42   8  K      8     10   18
## 43   8  Q      8     10   18
## 44   9  9      9      9   18
## 45   A  7     11      7   18
## 46   J  8     10      8   18
## 47   K  8     10      8   18
## 48   Q  8     10      8   18
## 49  10  7     10      7   17
## 50   6  A      6     11   17
## 51   7 10      7     10   17
## 52   7  J      7     10   17
## 53   7  K      7     10   17
## 54   7  Q      7     10   17
## 55   8  9      8      9   17
## 56   9  8      9      8   17
## 57   A  6     11      6   17
## 58   J  7     10      7   17
## 59   K  7     10      7   17
## 60   Q  7     10      7   17
## 61  10  6     10      6   16
## 62   5  A      5     11   16
## 63   6 10      6     10   16
## 64   6  J      6     10   16
## 65   6  K      6     10   16
## 66   6  Q      6     10   16
## 67   7  9      7      9   16
## 68   8  8      8      8   16
## 69   9  7      9      7   16
## 70   A  5     11      5   16
## 71   J  6     10      6   16
## 72   K  6     10      6   16
## 73   Q  6     10      6   16
## 74  10  5     10      5   15
## 75   4  A      4     11   15
## 76   5 10      5     10   15
## 77   5  J      5     10   15
## 78   5  K      5     10   15
## 79   5  Q      5     10   15
## 80   6  9      6      9   15
## 81   7  8      7      8   15
## 82   8  7      8      7   15
## 83   9  6      9      6   15
## 84   A  4     11      4   15
## 85   J  5     10      5   15
## 86   K  5     10      5   15
## 87   Q  5     10      5   15
## 88  10  4     10      4   14
## 89   3  A      3     11   14
## 90   4 10      4     10   14
## 91   4  J      4     10   14
## 92   4  K      4     10   14
## 93   4  Q      4     10   14
## 94   5  9      5      9   14
## 95   6  8      6      8   14
## 96   7  7      7      7   14
## 97   8  6      8      6   14
## 98   9  5      9      5   14
## 99   A  3     11      3   14
## 100  J  4     10      4   14
## 101  K  4     10      4   14
## 102  Q  4     10      4   14
## 103 10  3     10      3   13
## 104  2  A      2     11   13
## 105  3 10      3     10   13
## 106  3  J      3     10   13
## 107  3  K      3     10   13
## 108  3  Q      3     10   13
## 109  4  9      4      9   13
## 110  5  8      5      8   13
## 111  6  7      6      7   13
## 112  7  6      7      6   13
## 113  8  5      8      5   13
## 114  9  4      9      4   13
## 115  A  2     11      2   13
## 116  J  3     10      3   13
## 117  K  3     10      3   13
## 118  Q  3     10      3   13
## 119 10  2     10      2   12
## 120  2 10      2     10   12
## 121  2  J      2     10   12
## 122  2  K      2     10   12
## 123  2  Q      2     10   12
## 124  3  9      3      9   12
## 125  4  8      4      8   12
## 126  5  7      5      7   12
## 127  6  6      6      6   12
## 128  7  5      7      5   12
## 129  8  4      8      4   12
## 130  9  3      9      3   12
## 131  J  2     10      2   12
## 132  K  2     10      2   12
## 133  Q  2     10      2   12
## 134  2  9      2      9   11
## 135  3  8      3      8   11
## 136  4  7      4      7   11
## 137  5  6      5      6   11
## 138  6  5      6      5   11
## 139  7  4      7      4   11
## 140  8  3      8      3   11
## 141  9  2      9      2   11
## 142  2  8      2      8   10
## 143  3  7      3      7   10
## 144  4  6      4      6   10
## 145  5  5      5      5   10
## 146  6  4      6      4   10
## 147  7  3      7      3   10
## 148  8  2      8      2   10
## 149  2  7      2      7    9
## 150  3  6      3      6    9
## 151  4  5      4      5    9
## 152  5  4      5      4    9
## 153  6  3      6      3    9
## 154  7  2      7      2    9
## 155  2  6      2      6    8
## 156  3  5      3      5    8
## 157  4  4      4      4    8
## 158  5  3      5      3    8
## 159  6  2      6      2    8
## 160  2  5      2      5    7
## 161  3  4      3      4    7
## 162  4  3      4      3    7
## 163  5  2      5      2    7
## 164  2  4      2      4    6
## 165  3  3      3      3    6
## 166  4  2      4      2    6
## 167  2  3      2      3    5
## 168  3  2      3      2    5
## 169  2  2      2      2    4

##Descripción. El Blackjack es un juego de baraja francesa de hasta 7 jugadores donde los jugadores se enfrentan a la banca. El objetivo es sumar 21 con nuestras cartas o un valor superior al de la banca sin pasarnos del número. Si superamos 21 o sumamos un valor mas bajo que el del crupier automáticamente perderemos nuestra apuesta. Una vez realizadas las apuestas se reparten 2 cartas visibles a cada jugador y solamente una para la banca.