style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Sugerencias para Loteria Mexicana

Hey! me presento:
Hola Me llamo Leo soy nuevo en esto de la programada, estudio administración, pero en mis ratos libres eh estado estudiando java me interesa aprender a programar para poder contruir algun e-comerce claro eso cuando domine bien el lenguaje hehehe, por el momento me gustaría poder crear una loteria Mexicana asi q vengo a pedir sugerencias y ayuda explicare como va lo q la compone son 54 cartas y digamos 8 tablones, pensaba en hacer los tablones por matrices, pero no sé, si sea lo más apropiado y el mazo de cartas también en otra matriz y usar el método random para barajear las cartas al inicio de cada juego les parece q es correcto como lo estoy pensando, o habría una manera mas simple de representar los tabloides (y la loteria en general) los tabloides es lo q más dudas me deja son de 4x4 ( imagenes por tablon) cualquier sugerencia agradecido o algun código de alguna pag q sea parecido solo para chekarlo y darme una idea mas clara, si no pues con alguna sugerencia, o lo q se les ocurra que pueda funcionar todo es bienvenido, bien sin mas gracias salu2!

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Diseño conceptual

Hay que pensar en dos cosas: el diseño de la lógica del juego como tal y por otra parte la interfaz gráfica. Si separas bien ambas cosas, puedes cambiar la interfaz sin modificar la lógica del juego y pasar de una aplicación Swing de escritorio a una aplicación web, o en puro texto, etc.

Pensando primero en la lógica del juego, no necesitas una matriz para representar el mazo; simplemente necesitas un arreglo de 54 números, cada número representa una carta. Las cartas a fin de cuentas tienen una imagen, y esas imágenes aparecen también en los tabloides. Así que por ahi te sale la primera clase tal vez: Figura. Y también la clase Carta, que contiene una Figura. Y la clase Tabloide contiene una serie de Figuras (no necesitas manejar una matriz por ahora; eso es solamente para la representación gráfica).

Cada Figura debe tener un valor que la distingue de las demás; lo más sencillo es un número. Las puedes numerar del 1 al 54. Una Carta es simplemente un contenedor para una Figura y tiene el mismo valor numérico de su Figura. Un Tabloide contiene varias Figuras; puedes crear Tabloides con Figuras al azar (puedes usar el mismo algoritmo para crear tabloides que vas a usar para ir tomando cartas del mazo posteriormente).

El Tabloide adicionalmente debe saber cuántas Figuras ya han salido, para saber si ya se tienen todas seleccionadas indicar que hay un ganador. Y hay que saber cuáles son las que han ido saliendo, por lo que no es suficiente un número sino que necesitas realmente dos arreglos; uno con las Figuras, otro con el status de cada figura (seleccionada o no seleccionada).

Para el mazo basta con tener un arreglo mutable, del cual vas tomando una carta al azar (no necesitas "barajar" el mazo de entrada, sino que puedes ir tomando una Carta de forma aleatoria en cada turno). Vas a necesitar un java.util.Random para ello. Algo así:

java.util.Random rng = new Random(System.currentTimeMillis());
java.util.ArrayList<Carta> mazo = new ArrayList(54);
//llenas el mazo con cartas al azar
for (int i = 1; i <= 54; i++) {
  mazo.add(new Carta(i));
}
//luego para ir tomando una carta del mazo vas a hacer algo asi:
Carta turno = mazo.remove(rng.nextInt(mazo.size()));

La clase Tabloide debe tener un método para poder notificarle la carta que va saliendo y ahi que vaya marcando en su status si es que la Figura de la Carta corresponde con una de las que contiene.

Suena interesante el ejercicio, incluso para hacerlo para que se "juegue solo" y solamente ver el resultado.

Imagen de Mr. ADN

thx!

Muchas gracias Bro! esta mas simple como me lo explicas, ahora mismo comienzo a crearlo, cuando lo termine se los muestro a ver q les parece Gracias de nuevo!

Imagen de Mr. ADN

Mas Vale Tarde q nunca

Hola regrese, eh tardado muchisimo para lo poco q hice pero me hice bolas a la hora de aterrizarlo eh de confesar q me base en casi todo en lo q me dijiste y en un ejemplo de un libro del cual tambien cheke codigo en fin les deje el avance espero nuevas sugerencias info lo q sea tratare de seguir con la clase Tabloides lo q no tengo claro es como hacerla como ya habia dicho la hare con arreglos supongo, Fila[] Columna [] es lo q se me ocurre tal vez si lo hago con boolean, funcione asi podria poner el estado de cada figura true o false, cualquier cosa q me puedan decir por obvio q sea es bienvenida me cuesta mucho trabajo aún llegar a aterrizar las cosas, q me sugieren para aprender mas rápido,en otras palabras mas eficiente y mejor ( teniendo en cuenta q lo hago por libros y tutoriales pues yo estudio Administración, pero me gusta mucho la programación aunque no sea precisamente lo que mas se me de creí q sería más fácil aprender hehe,en mi ciudad no dan clases salvo en la ingenieria en sistemasen fin) me perdonan la ortografía pero es tardisimo y me muero de suenio bueno ya sin mas el codigo es la clase cartas falta tabloide y Loteria Mexicana donde iría el Main

package LoteriaMexicana;

import java.util.Arrays;

public class MazoDeCartas {
       
        public static void main (String[]args)
        {
               
        int cartas = 54;
        int cartasUsadas =54;
       
         
        //Creación de la baraja.
        int[] baraja =new int[cartas];
       
       
  {
         for(int i=0; i<baraja.length; i++)
         {
                 baraja[i]=i+1;
     
         }
     // Segunda Matriz donde irán las cartas sorteadas-elegidas.    
    int[]ninoGriton = new int[cartasUsadas];
         
         for(int i=0; i<ninoGriton.length; i++)
             {
                 //Sorteo de las Cartas.Indice Aleatorio entre 1 y 54
                 
                 int a = (int) (Math.random() * cartas);
                 
                 //Se selecciona la carta Situada En esa posición
                 
                 ninoGriton[i]=baraja[a] ;
                 
                 //Se translada la ultima Carta a Cartas Pasadas.
                 baraja[a]=baraja[cartas-1];
                 cartas--;
              }  
  }
       }
                           }

Mr. ADN

ME GUSTARIA SABER SI PUDO CONCRETAR EL DESARROLLO DE LA LOTERIA MEXICANA YA QUE CONTAMOS CON ALGUNAS ACTIVIDADES DE APOYO SOCIAL Y QUEREMOS UN PROGRAMA DE LOTERIA INTERACTIVO POR INTERNET SALUDOS ATTE. JOSE L. RGZ

loteria mexicana

hola chicos muy buenas noches espero que se encuentren bien, tengo una pregunta que hacerles como desarrollo la loteria en java no tengo la menor idea de como hacerlo por que soy nueva en esto de la programacion.
no tengo muchas bases para hacerla si alguien me puediera ir explicando se los agradeceria muchisimo.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">