Revista Ciencia

Dile a tu cuñado esta noche que te ha tocado El Gordo

Publicado el 24 diciembre 2016 por Eliatron
Se acerca la Noche buena y todos sabemos lo que pasa:
Dile cuñado esta noche tocado Gordo
 Así que desde Tito Eliatron Dixit te vamos a dar la solución.
Dile a tu cuñado que te ha tocado El Gordo. 
- Sí, sí, el Gordo de la Lotería, no el señor con sobrepeso que vive en el rellano del Quinto.
- Es que yo soy bueno y no me gusta decir mentiras.
- No pasa nada. Ya te he dicho que desde Tito Eliatron Dixit te vamos a ayudar.
Si a pesar de lo casposo que ha sido la introducción de este post sigues leyendo (eso no sé si dice mucho de ti), de verdad que vas a poder decir que te ha tocado EL GORDO.
Todos los días 22 de diciembre estamos acostumbrados a la parafernalia un tanto exagerada ya del Sorteo Extraordinario de Navidad. Una liturgia un tanto anticuada y poco adaptada a los nuevos tiempos.
¿Por qué perder toda una mañana viendo a unos pobres niños -explotados- cantando números y premios cuando una máquina lo puede hacer por nosotros en un segundo?
Pues eso es lo que os traigo. Unas pocas instrucciones de MATHEMATICA para simular, cuantas veces quieras, el Sorteo de Navidad:
Dile cuñado esta noche tocado Gordo

premios123 = {"EL GORDO EL GORDO", "Segundo (2)", "Tercero (3)"};
premios4 = Table["Cuarto (4)", {2}];
premios5 = Table["Quinto (5)", {8}];
pedrea = Table["pedrea", {1794}];
premios = RandomSample [Join[premios123, premios4, premios5, pedrea]];
numerospremiados = RandomSample[Range[100000] - 1, Length[premios]];
Grid[Join[ {Flatten[Table[{"Posición", "Número", "Premio"}, {13}]]},
  Table[
   Flatten[
   Table[
   {i + 138 j, numerospremiados[[i + 138 j]],
   premios[[i + 138 j]]}, {j, 0, 12}
   ]
   ]
   , {i, 1, 138}
   ]], Frame -> All, ItemSize ->; All]

Estas órdenes son tremendamente simples, no hay nada de extraordinario aquí. Es un simple juego que he hecho para mis alumnos de Prácticas de Mathematica. Pero gracias a este script (voy a llamarlo así) podemos juguetear un poco y hacer tantos sorteos como queramos en un corto espacio de tiempo... o hasta que nuestro número sea el agraciado con El Gordo y así podamos decirselo (sin miedo a mentir) a nuestro Cuñao en Nochebuena.
Una breve explicación de las órdenes.
Las 4 primeras generan tablas con los nombres de los premios. En la quinta orden, uno todas las tablas y la reordeno aleatoriamente (esto es el equivalente a sacar una bola del bombo de premios). La sexta orden toma todos los números del 0 al 99999 y extrae (sin reemplazamiento) tantas bolas como premios haya, lo que equivale a sacar los números del bombo.
En la última orden, presento los datos en formato tabla: a cada premio su número, según el orden de extracción. Lo que pasa es que como saldría una tabla muy larga, la he preparada para poner los datos en un 138 filas y 13x3 columnas.
Aquí os dejo una imagen del Gordo en una ejecución de este Script:
Dile a tu cuñado esta noche que te ha tocado El Gordo
Ahora con una imagen completa del resultado
Dile a tu cuñado esta noche que te ha tocado El Gordo
Para verla en grande, tendréis que decargarla... o bien, decargaros el PDF que he generado.
Y ya que estamos, os dejo con otro pequeño código que os permitirá repetir el sorteo 100 veces (o las que queráis, poniendo el numerito adecuado) y os dirá EL GORDO en cada una de ellas
Do[
 premios123 = {"EL GORDO EL GORDO", "Segundo (2)", "Tercero (3)"};
 premios4 = Table["Cuarto (4)", {2}];
 premios5 = Table["Quinto (5)", {8}];
 pedrea = Table["pedrea", {1794}];
 premios = RandomSample [Join[premios123, premios4, premios5, pedrea]];
 numerospremiados = RandomSample[Range[100000] - 1, Length[premios]];
 posgordo = Flatten[Position[premios, "EL GORDO EL GORDO"]][[1]];
 numgordo = numerospremiados[[posgordo]];
 Print["EL Gordo del sorteo nº", PaddedForm[i, 3], "  ha sido el",
  Style[PaddedForm[numgordo, 5], Bold, Italic]];, {i, 100}
 ]

Ahora que lo pienso, en la parafernalia del sorteo, eso de sacar un número y un premio asociado es de cara a la galería. Porque, ya que estamos, es igualmente aleatorio sacar únicamente los números y decir lo siguiente: El primer número que salga es El Gordo, el 2º número el Segundo Premio, el 3º el Tercer Premio, los 2 siguientes los Cuartos Premios, los 8 siguientes los Quintos Premios y el resto la Pedrea. O si queremos mantener un poco la tensión del Gordo, podemos hacerlo al revés. Los 1794 primeros números son los de la pedrea, los 8 siguientes los Quintos, los 2 siguientes los Cuartos, después el Tercero, Segundo y, finalmente, EL GORDO.
Pero claro, así puede parecer que no es tan aleatorio como de la forma tradicional. Si dudas de que ambos métodos son igualmente aleatorios, quizás debas leer Un reparto justo.
Tito Eliatron Dixit
PD: Esta entrada participa en la Edición 7.9 del Carnaval de Matemáticas, que en esta ocasión organiza el blog de José Luis Muñoz.  
 
Esta entrada se ha publicado originalmente en Tito Eliatron Dixit.
Si la estás viendo en otra web, probablemente estés siendo víctima de un engaño.
 
SI no ves las fórmulas correctamente, entra en Tito Eliatron Dixit, donde sí podrás verlas.
 

Volver a la Portada de Logo Paperblog