En el año 1996 hice un pequeño trabajo sobre la Lotería Primitiva el cual vieron solo algunos amigos ya que alguien me aconsejó que si no lo publicaba que no lo prodigase mucho pues había mucha gente que estaría dispuesta a apropiárselo. Quedó olvidado en un cajón y ahora que lo reencuentro decido publicarlo (aunque no sea al completo) en mi sitio web. Se observarán anacronismos como es el hablar de pesetas o del precio que tenían entonces las apuestas, pero prefiero dejarlo como estaba en aquel momento. También hago alusiones al Basic, lenguaje subsidiario del MSDOS, que en aquel entonces usábamos los aficionados.
Supongo que a los expertos en informática de la actualidad todo esto les sonará a prehistoria. Este trabajo visto hoy en día es una muestra de los subterfugios a los que había que recurrir en los tiempos primitivos de la informática, concretamente hace 13 años. Aunque advierto que, pese a lo rudimentarios que pudieran parecer, los programas a los que aludo siguen estando operativos y funcionando en Basica de MSDOS (y con impresora de puerto paralelo).

A VUELTAS CON LA LOTO

¿Cuántas son las apuestas posibles en el juego de la Lotería Primitiva? Tantas como las combinaciones (matemáticas) de 49 elementos tomados de 6 en 6, es decir,

C 49,6 = 13.983.816

El juego de la Lotería Primitiva, como es sabido, consiste en hacer combinaciones de 6 números escogiendo para ello cualesquiera números del 1 al 49. Cada una de estas combinaciones es una apuesta. El dia señalado salen por sorteo 6 números y la apuesta que coincida con esos 6 tiene un premio de 1ª categoría; si son 5 más otro que le llaman complementario será de 2ª categoría; si 5, de 3ª; si 4, de 4ª y si son 3 los acertados, de 5 ª categoría. En estos últimos es en los que nos vamos a centrar. [Usaré indistintamente los términos apuestas, quinielas y combinaciones de 6.]

El cálculo expuesto en el primer párrafo quiere decir que la probabilidad matemática de lograr los seis aciertos es prácticamente cero. ( 1:13983816 ) Posiblemente sea el juego de azar con menos posibilidades de acierto. Compárese, por ejemplo, con la Lotería Nacional en donde la probabilidad del primer premio es de 1 entre 100.000. ("Relativamente" grande). O con las quinielas deportivas donde los 14 aciertos ocurren (teóricamente) una vez entre 4.782.969.

Ante una cifra así resulta ilusorio pensar en que se pueda conseguir un método para aumentar esa probabilidad. Lo que aquí sí vamos a reconsiderar es el análisis del modelo de los trios en busca de algún posible método que haga posible su optimización. (Llamo trios a las combinaciones formadas por 3 elementos cualesquiera de los 49 números posibles. Ej.: 1-2-3, 8-20-32, 20-30-40, 47-48-49, etc.) Este "método de los tríos" consiste en olvidarse de los premios mayores y centrarse en las posibilidades y probabilidades de conseguir premios de quinta categoría (3 números acertados).

[Para ver gráficamente -de forma extramatemática- la escasa probabilidad de la que hablábamos piénsese en la combinación 1-2-3-4-5-6. Cualquier persona dirá que es casi imposible que salga eso. Pues bien, la probabilidad matemática de cualquier otra combinación es exáctamente la misma.]

Admitido lo dicho partimos de 2 axiomas:
1.- Los 49 números base pueden combinarse entre si de 3 en 3 (lo que llamamos tríos), siendo la cantidad posible total de estas combinaciones = C 49,3 = 49 x 48 x 47 : 3 ! = 18.424.
2.- En cada apuesta de 6 números hay implícitos 20 tríos. C6,3= 20.

[Aclaración: ¿Cómo es eso de que en cada apuesta hay implícitos 20 tríos? Veamos un ejemplo: En la combinación 1- 2 - 3 - 4 - 5 - 6 hay los 20 tríos siguientes:
1 - 2 - 3;     1 - 2 - 4;     1 - 2 - 5;     1 - 2 - 6;     1 - 3 - 4;     1 - 3 - 5;     1 - 3 - 6;     1 - 4 - 5;     1 - 4 - 6;     1 - 5 - 6;     2 - 3 - 4;     2 - 3 - 5;     2 - 3 - 6;     2 - 4 - 5;     2 - 4 - 6;     2 - 5 - 6;     3 - 4 - 5;     3 - 4 - 6;     3 - 5 - 6;     4 - 5 - 6. ;     En total son los 20 tríos. ]

(Lo expuesto hasta ahora no es mío. A partir de aquí, y partiendo de lo dicho, sí.)

Si el total de tríos es de 18.424 y si, además, en cada apuesta de 6 números hay implícitos 20 tríos se puede deducir que con 921,2 apuestas (es decir, 18.424 : 20) se cubriría el total de tríos posibles con lo cual estarían garantizados, al menos, 20 aciertos de 3. [Ese 2 decimal nos viene a decir que la cantidad de apuestas no es exacta. Quedan concretamente 4 números como parte de una apuesta más. O sea que en vez de 921,2 habría que hablar de 922.]

Partiendo de este principio se infiere que si se pudiese descubrir un método para conseguir las combinaciones precisas de estas 922 quinielas estaríamos hablando de un riesgo, asumible o no (según los criterios del jugador), pero, al menos, "presentable". Con un coste de 92.200 ptas. tendríamos aseguradas, al menos, entre 14.000 y 16.000 ptas. más los reintegros, lo cual, evidentemente, sería ruinoso, pero si lo que pretendemos es jugar un gran número de apuestas (en una peña, un club, etc.) éste sería un sistema de cubrirlas con la seguridad de que no hay en ellas ninguna repetición, no ya de combinaciones completas sinó, incluso, de la combinación de 3 números iguales, es decir cada grupo de 3 números cualesquiera sólo aparecería una vez en las 922 quinielas. Esta sería la optimización que haría meritorio el sistema.

Lo malo es que, en la práctica, esto no es factible. (Dada su trascendencia anticipo aquí esa conclusión a la que llegué más adelante.) La cifra de 921,2 es meramente teórica (es una media) y resulta imposible ajustar la materialidad de las apuestas a ella. En realidad es el total de la suma de quinielas de 6 y de... fracciones de quinielas. Si se pudiesen cubrir quinielas "parciales" de 5, 4 y 3 números, efectivamente el total de quinielas "enteras" sería ese, quedaría resumido en esa cantidad, pero como el Reglamento del juego no es así no se puede conseguir.
El conseguirlo habría de estar condicionado a que en esas 921 quinielas no se repitiese ningún trío y, al mismo tiempo, que no quedase ningún otro sin poner. Eso no es posible, lo sé ahora, pero ello no es óbice para que le demos vueltas al asunto. Al menos puede servir de pasatiempo y gimnasia mental.

PROCEDIMIENTO DE FORMACIÓN DE APUESTAS.- En primer lugar establezco las condiciones de cómo se han de formar los tríos. Sus números han de estar en orden creciente, de tal foma que los 3 elementos que lo forman deben ser 1º < 2º < 3º. Y recordando siempre que son "combinaciones". Así, por ejemplo, puesto el 1-2-3 está puesto también el 3-2-1 y demás. Para la construcción de las apuestas necesito previamente una lista con todos los tríos posibles en la que llevar un control de los tríos ya colocados. La formación de cada apuesta responde siempre al mismo procedimiento:
- Escojo 3 números (de forma correlativa),
- compruebo su validez ( = que no está usado),
- añado un 4º número,
- vuelvo a comprobar, esta vez 4 tríos,
- y así sucesivamente hasta tener 6 números que hayan superado las 20 pruebas. Si en alguna de esas comprobaciones algún trío ya está usado desecho ese último número, lo incremento en 1 y repito toda la operación.
- Conseguidos los 6 números acepto esa combinación como válida y anulo sus tríos correspondientes en la lista de control.
Hacer esto manualmente sería un trabajo ímprobo y laborioso por no decir (casi) imposible. Por ello ideo un programa informátivo que haga el mismo trabajo.

ALGORITMO DEL PRIMER PROGRAMA.- Comenzará dimensionando una matriz que hará de registro de la situación ("usado" o "no usado") de todos y cada uno de los tríos y luego se completará con dos rutinas principales:
Una que vaya proponiendo números correlativamente (desde el 1 hasta el 49) para formar conjuntos de 6 y
Otra que, cada vez que se agregue un número (a partir del 3º), sea capaz de comprobar en el registro citado todos los tríos que sucesivamente se van formando con cada número nuevo. Comprobación consistente en verificar si ese trío está "usado" o "no usado".
Una vez completado cada grupo de 6 hará dos cosas: poner en pantalla la combinación lograda (o imprimirla) y anular en el registro los 20 tríos correspondientes.
La programación de estas rutinas no supuso ningún problema. Lo más dificil, como se verá, estuvo en la formación del registro mencionado.

PRIMER PROGRAMA Y PRIMER FRACASO.- Este programa lo hago en Basic, como todos los demás. Dimensiono una matriz tridimensional de 49 x 49 x 49 para referenciar la lista de todas las combinaciones de 3 elementos. Los valores iniciales en la matriz serán todos 0 y cuando se aproveche un elemento para una apuesta se cambiara a 1 el valor de ese elemento.
Pero... al querer ejecutar el programa resulta que Basic no admite una matriz de esas dimensiones. Lo máximo que admite es una para 31 elementos. En este caso forma 125 apuestas, pero quedan 1.995 tríos sin colocar.

PRIMER HALLAZGO.- Pruebo con otros números y da resultados similares o peores. Hasta que descubro un número perfecto. El 22. Para 22 elementos salen 77 quinielas las cuales engloban exactamente los 1.540 tríos que a 22 elementos corresponden. En esas 77 apuestas, naturalmente todas distintas, ni sobra ni falta ninguna combinaciónn de 3 números de todas las posibles de 22.
Ni es suficiente ni es lo que buscaba, pero resulta maravilloso este número 22. Eso, en términos prácticos, quiere decir que con 77 quinielas apostamos a 22 números (en principio del 1 al 22) y si la fortuna quiere que los premiados estén dentro de este ámbito se habrán obtenido -al menos- 20 premios de 3 (C6,3). Si salen premiados 5 números de "nuestros" 22 se obtienen -también al menos- 10 premios de 3 (C5,3). Si 4, 4 y si 3, 1.

LOS 22 NÚMEROS.- Esos 22 números no tienen por qué ser necesariamente los 22 primeros. Para poderlos cambiar hago lo siguiente: grabo los resultados en un fichero de disco y construyo otro programa el cual solicita 22 números, los ordena de forma creciente y luego, tomando los datos que hay en el fichero, considerándolos no como números sino como posiciones, coloca los números nuevos en substitución de los primeros, siguiendo la estructura de colocación de estos.
Así, con 7.700 Ptas., se podría jugar a 22 números cualesquiera, que podrían ser, por ejemplo, aquellos que menos veces hayan salido.

NUEVO RETO.- Ya tenemos algo, pero me pregunto si no habrá otro número superior a 31 que, al igual que pasa con el 22, permita encajar todos los tríos en el número teórico de quinielas. Es decir, me planteo hacer el programa de forma que admita hasta 49 números. Con mi ordenador sólo puedo programar para 31 números, pero ¿no habrá alguna forma de "engañar" al ordenador para que me acepte hasta 49? Es una especie de reto.
Hago multiples intentos, pero todos fallidos. Entre otros los siguientes:

- Concibo la matriz de control de otra manera. En vez de tener una relación previa de todos los tríos, a la que se accede por unos subíndices, hago una matriz, dimensionada, pero vacía en la que iría guardando los tríos que salen. Tampoco vale.

- Transformo cada trío (a,b,c) en una especie de número complejo, una numeración de base 100, dándole el valor (10000 x a + 100 x b + c). Esta numeración abarcaría desde 10.203 hasta 474.849.

- Este número sigue siendo muy grande (al menos para mi sistema informático) y me invento otra numeración, esta vez de base 49. Cada número sería a x 492 + b x 49 + c. Esto da una "numeración" desde 2.502 (para el 1,2,3) hasta 115.248 (para 47,48,49). Sigue siendo muy elevado. La causa es que unas numeraciones así recogen las "variaciones" de los números, incluso con repetición, cuando lo que a mi me interesa no son "variaciones" sino sólo "combinaciones". (Por ejemplo, recoge el 1,1,1, el 1,1,2, el 1,2,3, 2,1,3 y 3,2,1, etc.) Pruebo varios cálculos para eliminar (para restar de los valores obtenidos) las cantidades correspondientes a aquellos tríos que no interesan. Obtengo varias aproximaciones, pero ninguna exacta.


Me afirmo en la idea de una numeración, pensando que si la consigo, si logro reducir la cantidad de datos a 18.424, aunque no pueda usar una matriz como instrumento de archivo y control, podría pensar en otro sistema de almacenamiento.

UNA NUEVA NUMERACIÓN.- Después de pensar sobre ello desisto de todos los cálculos anteriores para encontrar un sistema de numerar y me propongo empezar todo de nuevo. Y he aquí que, como por arte de magia, de repente se me ocurre el modelo:

1º).- Tenemos un gran conjunto, de tríos ordenados (de forma creciente):
a   b   c   a   b   c   a   b   c   .......... a   b   c   .......... a   b   c  
1 2 3
1 2 4 2 3 4
1 2 5 2 3 53 4 5
........................
1 2 492 3 493 4 49   44 45 47
1 3 42 4 53 5 6   44 45 48
...........................  44 45 49
1 48 492 48 493 48 49   44 48 49  47 48 49

2º).- Lo que necesito es simplemente un número de orden que vaya del 1 al 18424.

Ese número tiene que acumular el valor de tres órdenes o niveles: un nivel superior (cada conjunto de a=1, a=2, etc), un nivel medio (los subconjuntos de b) y un nivel inferior (el de la "unidad", c).
El número mayor de cada conjunto ha de valer igual que el primero, menos 1, del conjunto siguiente.
En consecuencia, valoramos por separado cada nivel:

NIVEL a: Cada vez que se acaba un número de a, las combinaciones pendientes se pueden calcular facilmente. Por ejemplo, una vez puestos todos los tríos que empiezan por 1 sólo quedan 48 números para combinar, es decir los tríos restantes son C48,3, o sea C(49-a),3 . Entonces si al total del final restamos, para cada conjunto de a, el número de combinaciones que quedan, obtenemos el valor base de todo ese conjunto a. Y como lo que nos interesa es el valor al principio del conjunto, no al final, dicho valor base será 18.424 menos las combinaciones de 49-(a-1). O sea,
Nivel a = 18424 - C(50-a),3 = 18424 - (50-a) x (50-a-1) x (50-a-2) / 6

NIVEL b: El primer subconjunto, dentro de cada conjunto a, ha de valer cero. (El valor "ordinal" lo aporta c). Luego, cada subconjunto sucesivo ha de incorporar al valor el número de veces que se repitió b en el subconjunto anterior. Así, si:

1,2,c sale 47 veces => 1,3,c aumentará 47    
1,3,c
"
46
"
=> 1,4,c
"
46    
1,4,c
"
45
"
=> 1,5,c
"
45
=
50-b
.......    
  .......
     
2,3,c
"
46
"
=> 2,4,c
"
46    
2,4,c
"
45
"
=> 2,5,c
"
45
=
50-b
........         ........        
          a,b,c       50-b

Vemos que esas series de números forman unas progresiones aritméticas de diferencia -1, cuyos primeros términos varían (en función de a), y valen (48-a).

Ahora bien, estos valores han de ser acumulativos. Para cuantificar un número de orden determinado no sólo hay que incorporar el valor del b actual, sino también el de todos los anteriores (dentro de la serie de a). Es, por lo tanto, una Suma de progresión aritmética:

NIVEL c: (el que aporta las unidades). Como c siempre empieza en 1 más que b, será c-b.

La suma de los 3 órdenes o niveles descritos nos da el número de orden (NO) correspondiente a cada trío.


Ejemplos: Para 1,2,3 ......
NO =
0
+
0
+
1
=
1
 
"
2,4,49 ....
"
1.128
+
46
+
45
=
1.219
 
"
2,5,6 ......
"
1.128
+
91
+
1
=
1.220
 
"
47,48,49
"
18.423
+
0
+
1
=
18.424
(Compruébese en estos ejemplos como, efectivamente, la numeración va desde 1 hasta 18424.)

EL PROGRAMA DEFINITIVO.- Tengo, por fin, una fórmula para numerar exactamente los tríos y poder guardar ordenadamente el dato asociado a cada uno de ellos. Estos datos podría guardarlos o bien directamente en direcciones de memoria o bien en un fichero de disco. Lo primero requiere reservar para el usuario un espacio de memoria (para que no interfiera la ejecución del propio programa), pero esto ha de hacerse en lenguaje ensamblador y eso es meterse en camisas de once varas. En cuanto a lo segundo presumo que su ejecución va a ser muy lenta. Pero... hete aquí, que de improviso, sin pensar en ello, me viene una idea espontánea. (Seguida de la clásica pregunta de "¿Cómo no se me habrá ocurrido antes?")

La cuestión es que el ordenador no me admite una matriz numérica de dimensión 18424, pero podría admitirla alfa-numérica. A mi me basta con un byte por dimensión, ya que con una letra cualquiera me es suficiente, y las numéricas necesitan, al menos, 2 bytes, que es lo que ocupa un entero.

Ejemplo. Primeras apuestas para la opción de 22 elementos.
Voy al ordenador, pruebo y ¡perfecto!

Con la misma estructura que el primer programa hago este otro, el definitivo, válido para cualquier número de elementos, con un máximo de 49, y con la única diferencia de la matriz. En vez de guardar los tríos referenciados por tres subíndices los guardo en una matriz alfa-numérica, referenciada por el N.O. descrito en el párrafo anterior y cuyos contenidos, en principio vacíos, los voy ocupando con una "s" (inicial de "si") cada vez que un trío es aceptado en una quiniela. Lo ejecuto y funciona a la primera. Eso si, algo lento para los números elevados. Con los últimos tarda medía hora.

Le añado una rutina, opcional, para ver los tríos que quedan sin encajar.

RESULTADOS.- El programa funciona bien, pero nos da unos resultados decepcionantes. Ahora podemos afirmar que, salvo para los 22 elementos (y 6, claro), no hay posibilidad material de colocar todos los tríos. Como ejemplo para comprender esta imposiblidad supongamos que queremos apostar a 7 números. Hacemos la apuesta 1,2,3,4,5,6 pero nos quedan todas las combinaciones con el 7 sin poderlas poner. (Sin repetir tríos, claro, que es la condición previa.)

Dejo constancia de algunos de los resultados:

Número de
elementos

Tríos totales
Resultados obtenidos
APUESTAS    tríos equiv.
tríos
sin colocar
22
1.540
77
=
1.540
0
30
4.060
115
=
2.300
1.760
31
4.495
125
=
2.500
1.995
40
9.880
275
=
5.500
4.380
47
16.215
440
=
8.800
7.415
48
17.296
477
=
9.540
7.756
49
18.424
496
=
9.920
8.504

MÁS SOBRE LA ESTRUCTURA DE LOS 22 NÚMEROS.- Quiero volver a resaltar el comportamiento óptimo de estas relaciones combinatorias cuando se apuesta a 22 números. Es una especie de número áureo de esta arquitectura numérica. Y a lo dicho anteriormente todavía hay que añadir algo más: el premio matemáticamente seguro -si salen ganadores 6 números elementos del conjunto de los 22- es, teóricamente, el de 20 combinaciones de 3; pero ensayando varias combinaciones descubro (empíricamente) que el mínimo son 12 de 3 y 2 de 4. (Son los mismos 20 tríos pero recombinados en 12 tríos y 2 cuartetos.) No sé hacer la demostración matemática de ello, pero, dado que estamos hablando de una estructura "cerrada" en la que todos los números tienen las mismas relaciones de correspondencia con los demás, creo que este resultado observado se puede generalizar. Tampoco tiene nada de raro si se piensa que los 20 tríos ganadores son conjuntos de 3 en los que, todos y cada uno de ellos, tienen 3 intersecciones -distintas- de 2 elementos con otros 3 conjuntos. (A los que le ocurre lo mismo.) Intuyo que por ahí ande la explicación de que los 20 tríos se concentren en 14 apuestas en las que salen 12 apuestas con 1 trío más otras dos que engloban a 4 cada una.

Como ilustración para observar lo dicho sobre intersecciones de conjuntos y para enmarcar cualquier reflexión sobre el caso, recuerdo los tríos que forman los números a, b, c, d, e, f.

a b c
a b d
a b e
a b f
a c d
b c d
a c e
b c e
a c f
b c f
a d e
b d e
c d e
a d f
b d f
c d f
a e f
b e f
c e f
d e f

ESTRATEGIAS.- Desde luego que las perspectivas, después de lo visto, no son ningún incentivo para jugar. Si a pesar de ello, una persona o grupo de personas están de antemano predispuestas a hacerlo siempre será mejor hacer uso de las combinaciones obtenidas por el programa en cuestión que cubrir boletos a voleo. Por lo pronto se tendrá la tranquilidad de saber que no se malgastan combinaciones, que no se repiten. La máxima coincidencia entre 2 combinaciones será de 2 números. Sabemos, no sólo que no hay 2 apuestas iguales sino que no hay ninguna secuencia de 3 ó más números que se repita. Solamente por esto ya podríamos calificarlo de "método".

OTROS PREMIOS.- Los cálculos anteriores son todos referidos a los premios de 3 aciertos (ya que partimos de un planteamiento de este tipo), pero indudablemente siempre existe, además de las probabilidades mencionadas, la probabilidad de otros premios. Estos ya no dependen del programa propuesto sino del número de apuestas que se hagan. Por lo tanto el calcularlas podrá tener el interés de la curiosidad, pero no afecta a la selección de una estrategia basada en el programa. (Ninguna estructura es mejor que otra. Lo único que ocurre es que a más apuestas, más probabilidades.)

OTROS DATOS.- En cada combinación de 6 números hay siempre, implícitas, las siguientes combinaciones posibles:
1 de 6
6 de 5 y
15 de 4.- (Aparte de las ya conocidas 20 de 3).

Por otro lado el total de combinaciones posibles con 49 números son:
13.983.816 de 6
1.906.880 de 5
211.876 de 4

CONCLUSIÓN.- La probabilidad de ganar dinero con la Loto es mínima, pero confirmarlo me supuso, durante unos días, un pasatiempo entretenido e interesante. Otros hacen crucigramas.

M.D.Q.- Ourense - Noviembre, 1996

SUBIR

SALIR