Java - Dudas en Bingo

 
Vista:
sin imagen de perfil

Dudas en Bingo

Publicado por Alvaro (1 intervención) el 12/12/2016 03:50:12
Buenas! Soy un estudiante de 1º de Ingeniería Informática y bueno, mis profesores no es que expliquen mucho y necesito ayuda en una práctica que tengo que entregar este viernes. Como habréis visto en el titulo, se trata de un Bingo. Mis dudas son estas:
- Como puedo hacer que el menu aparezca despues de elegir una opcion? Es decir, si yo elijo la opcion 11, como puedo hacer para que me vuelva a salir otra vez el menu? Ademas este menu tiene que dejar de salir cuando haya un ganador
- Como puedo evitar que se repita un numero en los dos cartones y a la hora de sacar una bola? Es decir, que si sale el numero 21, que no salga otra vez en el mismo carton, o que no salga mas de 1 vez cuando el programa saque una bola. (Tiene que ser obligatorio con Math.random()
- Que puedo hacer para que el programa compruebe si se ha producido linea o bingo? Ademas, solo tiene que cantar linea una vez, aunque imagino que esto se hace con un if, pero no tengo ni idea de como plantearlo.
- Como puedo imprimir el bombo (formado por numeros del 1 al 90 incluidos ambos) en una matriz de manera que se imprima 10 numeros por fila? Imagino que es con una matriz 9x10, pero no sé como asignarle todos estos valores a cada fila y columna.
- Como puedo cambiar(en el carton y en el bombo) un numero que ya haya salido, por una X? Es decir, que cuando salga el numero 35, si esta en un carton, que el programa sustituya el 35 por una X, y idem en el bombo.
Os pongo en negrita donde quiero situar cada uno de estos apartados, ademas de informacion para entender lo que hayen este codigo:, Se que son muchas cosas por eso no obligo a nadie a ayudarme, pero si pudierais echarme un cable os estaria muy agradecido..

package bingo;
import java.util.*;
public class bingo {
public static void main(String[] args) {
Scanner teclado=new Scanner(System.in
DEFINICION DE NOMBRES DE USUARIOS
String nombre1,nombre2;
System.out.println("Introduzca el nombre del jugador 1");
nombre1 = teclado.nextLine();
System.out.println("Introduzca el nombre del jugador 2");
nombre2= teclado.nextLine() ;
System.out.println("Los dos jugadores son: "+nombre1+" y "+nombre2);

MENU SWITCH CASE AQUI TENGO QUE HACER QUE EL MENU SALGA AL ELEGIR UNA OPCION HASTA QUE HAYA UN GANADOR
System.out.println("Seleccione la opción deseada: \n1.Iniciar partida \n2.Sacar bola \n3.Mostrar cartones \n4. Mostrar bombo ");
int seleccion=teclado.nextInt();
switch (seleccion){
case 1: CREAR 2 CARTONES ALEATORIOS{/b]
AQUI ES DONDE TENGO QUE EVITAR QUE SE REPITAN LOS NUMEROS EN LA MATRIZ

System.out.println(nombre1+", este es tu cartón");
int Carton1[][]=new int [3][5];
int x,y; // Definicion de x=numero de filas , y=numero de columnas)
for (x=0;x<3;x++){
for (y=0;y<5;y++){
Carton1[x][y]=(int) (Math.random()*90+1);
System.out.print(Carton1[x][y]+" ");
} System.out.println("");
}
System.out.println("");

System.out.println(nombre2+", este es tu cartón");
int Carton2[][]=new int[3][5];
for (x=0;x<3;x++){
for(y=0;y<5;y++){
Carton2[x][y]=(int) (Math.random()*90+1);
System.out.print(Carton2[x][y]+" ");
} System.out.println("");
}
break;
case 2: SACAR NUMERO DEL 1-90
int bola; AQUI TAMBIEN TENGO QUE EVITAR QUE UN NUMERO SE REPITA
System.out.println("A continuación se sacará una bola del bombo");
bola=(int) Math.random()*90+1;
System.out.println("Ha salido el número"+bola);

break;
case 3: MOSTRAR ESTADO DE LOS CARTONES(CON LOS NUMEROS QUE YA SE HAN "TACHADO" AL HABER SALIDO PREVIAMENTE EN EL CASE 2)
AQUI ES DONDE TENGO QUE CREAR UNA MATRIZ PARA CADA CARTON CREADO PREVIAMENTE EN CASE1 , CAMBIANDO LOS NUMEROS QUE HAN SALIDO POR X
System.out.println("Estado del carton de"+nombre1+".Las X indican que el numero correspondiente ha salido");


System.out.println("Estado del carton de"+nombre2+".Las X indican que el numero correspondiente ha salido");



break;
case 4:MOSTRAR BOMBO(AQUI TENGO QUE MOSTRAR TODOS LOS NUMEROS DEL BOMBO EXCEPTO LOS QUE HAN SALIDO QUE SE SUSTITUYEN POR UNA X CON UNA MATRIZ
System.out.println("Estado del bombo. Las X indican que el numero correspondiente ya ha salido.");





} } }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder