Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Algoritmo generar cartones bingo

1,962 views
Skip to first unread message

El Granjero del Web

unread,
Aug 30, 2000, 3:00:00 AM8/30/00
to
Alguien puede ayudarme,

Estoy intentanto hacer un programa que genere los cartones para una
loteria casera.
Primero lo intente por cartones:

Un carton se compone de:

- 3 filas.
- 9 columnas.
- 15 numeros , 12 cubiertas (27 celdas)

Restricciones:
Cada fila tiene 4 celdas cubiertas.
Cada columna tiene 1 o 2 cubiertas. (ni 0 ni 3 son casos válidos).

Con estas restricciones prepare un algoritmo que rellenaba las cubiertas
del carton. Pero con las restricciones llega un momento en el cual, solo
una posibilidad es correcta para completar el cartón... pero el sistema
aleatorio tarda oo en encontrarla.

Un saludo y espero vuestra ayuda. o alguna pista.


F

unread,
Aug 30, 2000, 3:00:00 AM8/30/00
to
 
El Granjero del Web <jrg...@airtel.net> escribió en el mensaje de noticias 39AD415A...@airtel.net...
> Alguien puede ayudarme,
Lo he solucionado con un programa en Qbasic que adjunto ( pongo el mensaje en HTML, para que no partan las lineas, si alguien necesita el qbasci esta en mi pagina)
 
Lo intente hacer por el metodo aleatorio y es cierto que se tarde mucho tiempo, por que la mayoria de los tableros que hacia eran incorrectos
 
Luego haciendo pruebas me di cuenta que solo es posible que un carton tenga tres colunmas con 2  tapados, en eso se basa mi programa
 
La primera linea es sencilla, se eligen los 4 tapados al hacer
 
La segunda es mas complicada se eligen 4 al azar pero se comprueba que solo 3 esten en linea, si el cuarto tambien esta el linea se vuelve a calcular
 
La tercer linea es mas complicada, se calcula al azar
si hay ya dos en linea en esa colunma se vuelve a calcular
si hay uno y ya estan 3 en linea se vuelve a calcular
Si no se deja
Este es el mas lento pero como solo son 9 numero , no tarda mucho.
 
Al final calcula el carton al prainstate.
 
Si alguien tiene dudas sobre el codigo que me escriba un email. (si quieres que tambien calcule los numeros me lo dices ¿OK?)
 
 
CODIGO AL FINAL DEL MENSAJE
 
SAludos

--
 *********************
  F
   hisp...@iname.com
     http://members.xoom.com/hispaniaes/
                                 ***********************
CODIGO EN QBASIC
DIM CARTON$(3, 9) 'Carton de 3 filas y 9 columnas
RANDOMIZE TIMER
CLS
 

'Solo puede haber tres colunmas con dos tapados
COLDIS = 3
FOR Y = 1 TO 3
FOR X = 1 TO 9
CARTON$(Y, X) = "00"
NEXT X
NEXT Y
 

'Vamos a colocar los tapados
'Primera Fila
FOR X = 1 TO 4
1 FICHA = INT(RND * 9) + 1
IF CARTON$(1, FICHA) <> "XX" THEN CARTON$(1, FICHA) = "XX" ELSE GOTO 1
NEXT X
 
'Segunda Fila
FOR X = 1 TO 4
2 FICHA = INT(RND * 9) + 1
IF CARTON$(2, FICHA) = "XX" GOTO 2
IF CARTON$(1, FICHA) = "XX" THEN
IF COLDIS = 0 GOTO 2
COLDIS = COLDIS - 1
END IF
CARTON$(2, FICHA) = "XX"
NEXT X
 
'Tercera Fila
FOR X = 1 TO 4
3 FICHA = INT(RND * 9) + 1
IF CARTON$(3, FICHA) = "XX" THEN GOTO 3
IF CARTON$(1, FICHA) = "XX" AND CARTON$(2, FICHA) = "XX" GOTO 3
IF CARTON$(1, FICHA) = "XX" THEN
IF COLDIS = 0 GOTO 3
COLDIS = COLDIS - 1
END IF
IF CARTON$(2, FICHA) = "XX" THEN
IF COLDIS = 0 GOTO 3
COLDIS = COLDIS - 1
END IF
CARTON$(3, FICHA) = "XX"
NEXT X
 

'Imprime en pantalla
FOR Y = 1 TO 3
FOR X = 1 TO 9
PRINT CARTON$(Y, X) + " ";
NEXT X
PRINT
NEXT Y
 
 
 
 
 

 

alvah...@gmail.com

unread,
Jul 25, 2014, 1:02:32 AM7/25/14
to
Tema viejo si los hay, pero lo necesito en este momento, si llegan a ver esto me pueden decir como lo resolvieron? estoy necesitandolo, muchas gracias desde ya

gamo

unread,
Jul 25, 2014, 9:58:52 AM7/25/14
to
El 25/07/14 a las #4, alvah...@gmail.com escribi�:
> Tema viejo si los hay, pero lo necesito en este momento, si llegan a ver esto me pueden decir

como lo resolvieron? estoy necesitandolo, muchas gracias desde ya
>

�A cu�nto se paga la sabidur�a?


--
http://www.telecable.es/personales/gamo/
Message has been deleted

alvah...@gmail.com

unread,
Aug 10, 2014, 1:57:20 AM8/10/14
to
Tengo problemas de como corroborar los cartones ganadores, te interesa darme una mano?
0 new messages