SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
/* JUEGO DEL BINGO 
* ESTE JUEGO FUE CREADO PARA JUGAR CON 4 TABLEROS 
* Y LA CREACION DE 1 UNA FIGURA (L) 
* CON LAS RESPECTIVAS VALIDACIONES 
* Y LA GENERACION DE NUMEROS ALEATORIOS 
*/ 
package menus; 
import java.io.*; 
import java.util.Random; 
import java.util.Scanner; 
/** 
* 
* @author edgar 
* 
*/ 
public class bingo { 
// Definicion de Variables Globales 
private static menu llamaMenu = new menu(); 
//private static int[] numerAlea = new int[25]; 
private static int[][] matAle = new int[5][5]; 
private static int[][] matAle1 = new int[5][5]; 
private static int[][] matAle2 = new int[5][5]; 
private static int[][] matAle3 = new int[5][5]; 
private static int[][] matAle4 = new int[5][5]; 
private static int[][] matMan = new int[5][5]; 
private static int[][] matMan1 = new int[5][5]; 
private static int[][] matMan2 = new int[5][5]; 
private static int[][] matMan3 = new int[5][5]; 
private static int[][] matMan4 = new int[5][5]; 
private static int[] figuraL1=new int[9]; 
private static int[] figuraL2=new int[9]; 
private static int[] figuraL3=new int[9]; 
private static int[] figuraL4=new int[9]; 
private static int[] figuraC1=new int[13]; 
private static int[] figuraC2=new int[13]; 
private static int[] figuraC3=new int[13]; 
private static int[] figuraC4=new int[13]; 
private static int 
fichas=2000,con=0,x=0,i=0,j=0,hasta=0,desde=0,aleatorio=0,manual=0,aux=0,edad=0,tableros=0,z=0, 
comp=0,aleMan=0,fig=0,manualAlea=0; 
private static String nombre="",nick=""; 
private static Random rnd = new Random();
private static Scanner teclado = new Scanner(System.in); 
public static void main(String[] args) throws IOException{ 
resMatr resetear = new resMatr(); 
resetear.resMatr(); 
llamaMenu.menu(); 
} 
static class menu{ 
void menu(){ 
char letra=' '; 
BufferedReader teclado1 = new BufferedReader(new InputStreamReader(System.in)); 
try{ 
System.out.println("tttttt********************************"); 
System.out.println("tttttt********************************"); 
System.out.println("tttttt******* BINGO MILLONARIO *******"); 
System.out.println("tttttt******* MENU *******"); 
System.out.println("tttttt********************************"); 
System.out.println("tttttt********************************"); 
System.out.println("nttttta) Registrar Datos"); 
System.out.println("tttttb) Jugar Bingo"); 
System.out.println("tttttc) Digite 's-S' para salir"); 
System.out.print("nttttttElija una opcion : "); 
letra = teclado1.readLine().charAt(0); 
}catch (IOException e){ 
System.out.print("nError de captura en: "+e); 
} 
switch(letra){ 
case 'a': case 'A': 
registrarDatos registrar = new registrarDatos(); 
registrar.registrarDatos(); 
llamaMenu.menu(); 
case 'b': case 'B': 
// Comprueba si esta registrado 
comprobarRegistro comReg1 = new comprobarRegistro(); 
con = comReg1.comprobarRegistro(); 
try{ 
if(con == 0){ 
// Creacion de Instancias y objetos 
crearMatrizAle crearMatAle = new crearMatrizAle(); 
crearMatrizMan crearMatMan = new crearMatrizMan(); 
crearFigura figura = new crearFigura(); 
numerosAleatorios numAle = new numerosAleatorios(); 
System.out.println("nntttttRecuerde que puede jugar con 4 tableros"); 
System.out.println("tttttsimultanamente. Cada tablero tiene un valor");
System.out.println("tttttde 500 fichas."); 
System.out.println("ntttttPuede generar los tableros aleatoriamente o"); 
System.out.println("tttttmanualmente"); 
System.out.println("ntttttSi desea generarlos aleatoriamente digite 1"); 
System.out.println("tttttSi desea generarlos manualmente digite 2"); 
do{ 
System.out.print("nttttttDigite su opción: "); 
Scanner teclado4 = new Scanner(System.in); 
aleMan = Integer.parseInt(teclado4.nextLine()); 
}while(aleMan <1 || aleMan >2); 
if(aleMan==1){ 
System.out.println("ntttttTABLEROS GENERADOS ALEATORIAMENTE"); 
System.out.print("nttttt¿Con cuantos Tableros desea jugar?: "); 
Scanner teclado3 = new Scanner(System.in); 
tableros = Integer.parseInt(teclado3.nextLine()); 
// Validacion del ingreso de un numero entre 1 y 4 
if(tableros >=1 && tableros <=4){ 
comp = 1; 
} 
if(tableros <1 || tableros >4){ 
while(tableros <1 || tableros >4){ 
System.out.print("ntttttIngresa un numero entre 1 y 4: "); 
tableros = Integer.parseInt(teclado3.nextLine()); 
comp=1; 
} 
} 
if(comp == 1){ 
crearMatAle.crearMatrizAle(); 
} 
manualAlea=1; 
} 
if(aleMan==2){ 
System.out.println("ntttttTABLEROS GENERADOS MANUALMENTE"); 
System.out.println("nttttt¿Con cuantos Tableros desea jugar?: "); 
Scanner teclado3 = new Scanner(System.in); 
tableros = Integer.parseInt(teclado3.nextLine()); 
// Validacion del ingreso de un numero entre 1 y 4 
if(tableros >=1 && tableros <=4){ 
comp = 1; 
} 
if(tableros <1 || tableros >4){ 
while(tableros <1 || tableros >4){ 
System.out.print("ntttttIngresa un numero entre 1 y 4: "); 
tableros = Integer.parseInt(teclado3.nextLine());
comp=1; 
} 
} 
if(comp == 1){ 
crearMatMan.crearMatrizMan(); 
} 
manualAlea=2; 
} 
figura.crearFigura(); 
numAle.numerosAleatorios(); 
} 
if(con == 1){ 
System.out.println("nntttttDebe registrar sus datos primerontttttantes de 
poder jugar"); 
System.out.println("ttttt--------------------------------nn"); 
} 
}catch(NumberFormatException ex){ 
System.out.println("Ocurrio algun error en: " + ex); 
} 
this.menu(); 
case 's': case 'S': 
System.out.println("nntttttt*****************************"); 
System.out.println("tttttt* Gracias por Jugar BINGO *"); 
System.out.println("tttttt*****************************"); 
System.exit(0); 
break; 
default: 
System.out.println("nnLo siento la opción digitada no existe"); 
System.out.println("--------------------------------------nn"); 
llamaMenu.menu(); 
} 
} 
} 
static class comprobarRegistro{ 
int comprobarRegistro(){ 
if(nombre.equals("") && nick.equals("") && edad == 0){ 
return 1; 
} 
return 0; 
} 
} 
static class registrarDatos{
void registrarDatos(){ 
try{ 
//teclado.useDelimiter(System.getProperty("line.separator")); 
System.out.print("Ingrese el nombre: "); 
nombre = teclado.next(); 
System.out.print("Ingrese el nick: "); 
nick = teclado.next(); 
System.out.print("Ingrese edad: "); 
edad = teclado.nextInt(); 
System.out.print("nttttt*** Usted '"+nick+"' posee "+fichas+" fichas para jugar 
***nn"); 
} 
catch(NumberFormatException ex){ 
System.out.println("Ocurrio algun error en: " + ex); 
} 
} 
} 
static class crearMatrizAle{ 
void crearMatrizAle() { 
System.out.print("ntINGRESO DEL BINGO ALEATORIAMENTEnn"); 
for (z=0;z<tableros;z++){ 
for (i=0;i< 5;i++){ 
rangoMatr rangos = new rangoMatr(); 
rangos.rangoMatr(i); 
for(j=0;j<5;j++) { 
aleatorio = (rnd.nextInt(hasta-desde+1)+desde); 
do{ 
if(aleatorio == matAle[x][i]){ 
aux = 1; 
} 
x++; 
}while(x<j); 
if(aux == 0){ 
matAle[j][i] = aleatorio; 
} 
else{ 
j--; 
aux=0; 
} 
x=0; 
} 
} 
crearMatrizAleManTableros enviarTableros = new crearMatrizAleManTableros();
enviarTableros.crearMatrizAleManTableros(1,z,matAle); 
fichas=fichas-500; 
} 
imprMatr imprimir = new imprMatr(); 
imprimir.imprMatr(1); 
} 
} 
static class crearMatrizMan{ 
void crearMatrizMan() { 
System.out.println("ntINGRESO DEL BINGO MANUALMENTE"); 
for (z=0;z<tableros;z++){ 
System.out.println("ntIngrese los numeros del tablero N #"+z); 
for (i=0;i< 5;i++){ 
rangoMatr rangos = new rangoMatr(); 
rangos.rangoMatr(i); 
System.out.println("n-----------------------------------------------------"); 
System.out.println("- Ingrese un numero que se encuentre entre "+desde+" y "+hasta+" 
-"); 
System.out.println("-----------------------------------------------------n"); 
for(j=0;j<5;j++) { 
System.out.print("fila["+j+"] columna["+i+"]: "); 
Scanner matrizMan = new Scanner(System.in); 
manual = Integer.parseInt(matrizMan.nextLine()); 
if(manual >= desde && manual <= hasta){ 
do{ 
if(manual == matMan[x][i]){ 
aux = 1; 
} 
x++; 
}while(x<j); 
if(aux == 0){ 
matMan[j][i] = manual; 
} 
else{ 
j--; 
aux=0; 
System.out.println("n---------------------------------"); 
System.out.println("- Ingrese un numero diferente -"); 
System.out.println("---------------------------------n"); 
} 
x=0; 
} 
else{
j--; 
aux=0; 
System.out.println("n-----------------------------------------------------"); 
System.out.println("- Ingrese un numero que se encuentre entre "+desde+" y 
"+hasta+" -"); 
System.out.println("-----------------------------------------------------n"); 
} 
} 
System.out.println(); 
} 
crearMatrizAleManTableros enviarTableros = new crearMatrizAleManTableros(); 
enviarTableros.crearMatrizAleManTableros(2,z,matMan); 
fichas=fichas-500; 
} 
imprMatr imprimir = new imprMatr(); 
imprimir.imprMatr(2); 
} 
} 
static class crearMatrizAleManTableros{ 
void crearMatrizAleManTableros(int aleaManu,int contador,int matriz [][]) { 
if(aleaManu == 1){ 
for (i=0;i< 5;i++){ 
for (j=0;j< 5;j++){ 
if(contador == 0){ matAle1[j][i] = matriz[j][i]; } 
if(contador == 1){ matAle2[j][i] = matriz[j][i]; } 
if(contador == 2){ matAle3[j][i] = matriz[j][i]; } 
if(contador == 3){ matAle4[j][i] = matriz[j][i]; } 
} 
} 
} 
if(aleaManu == 2){ 
for (i=0;i< 5;i++){ 
for (j=0;j< 5;j++){ 
if(contador == 0){ matMan1[j][i] = matriz[j][i]; } 
if(contador == 1){ matMan2[j][i] = matriz[j][i]; } 
if(contador == 2){ matMan3[j][i] = matriz[j][i]; } 
if(contador == 3){ matMan4[j][i] = matriz[j][i]; } 
} 
} 
} 
} 
} 
static class imprMatr{ 
void imprMatr(int valor) { 
imprMatrTableros imprimirAleMan = new imprMatrTableros();
if(1 == valor){ 
for(z=0;z<tableros;z++){ 
if(z==0){ imprimirAleMan.imprMatrTableros(1,matAle1); } 
if(z==1){ imprimirAleMan.imprMatrTableros(2,matAle2); } 
if(z==2){ imprimirAleMan.imprMatrTableros(3,matAle3); } 
if(z==3){ imprimirAleMan.imprMatrTableros(4,matAle4); } 
} 
} 
if(2 == valor){ 
for(z=0;z<tableros;z++){ 
if(z==0){ imprimirAleMan.imprMatrTableros(1,matMan1); } 
if(z==1){ imprimirAleMan.imprMatrTableros(2,matMan2); } 
if(z==2){ imprimirAleMan.imprMatrTableros(3,matMan3); } 
if(z==3){ imprimirAleMan.imprMatrTableros(4,matMan4); } 
} 
} 
} 
} 
static class imprMatrTableros{ 
void imprMatrTableros(int val2,int matrizImpresa [][]) { 
System.out.print("ntTablero N #"+val2); 
System.out.print("ntBtItNtGt On"); 
System.out.print("t----------------------------------n"); 
for (i=0;i< 5;i++){ 
for (j=0;j< 5;j++){ 
System.out.print("t"+matrizImpresa[i][j]+" "); 
} 
System.out.println(); 
} 
System.out.print("t----------------------------------n"); 
} 
} 
static class rangoMatr{ 
void rangoMatr(int val) { 
int valor; valor=val; 
if(valor == 0){ hasta=15; desde=1; } 
if(valor == 1){ hasta=30; desde=16; } 
if(valor == 2){ hasta=45; desde=31; } 
if(valor == 3){ hasta=60; desde=46; } 
if(valor == 4){ hasta=75; desde=61; } 
} 
} 
static class crearFigura{ 
void crearFigura() {
crearFigEspec figuraEspec = new crearFigEspec(); 
imprimirFigura impFig = new imprimirFigura(); 
int[][] matFig = new int[5][5]; 
System.out.println("ntttttSi desea Crear la Figura L digite 1"); 
System.out.println("tttttSi desea Crear la Figura C digite 2"); 
//System.out.println("tttttSi desea Crear la Figura O digite 3"); 
do{ 
System.out.print("nttttttDigite su opción: "); 
Scanner teclado5 = new Scanner(System.in); 
fig = Integer.parseInt(teclado5.nextLine()); 
}while(fig <1 || fig >2); 
System.out.println("ntttttttFigura 'L'"); 
System.out.println("ttttttt*********"); 
for (z=0;z<tableros;z++){ 
// "Uno(1)" Para saber si se ingreso los tableros aleatoriamente ó "Cero(0)" para tableros 
manuales 
if(manualAlea==1){ 
if(z == 0){ matFig=matAle1; } 
if(z == 1){ matFig=matAle2; } 
if(z == 2){ matFig=matAle3; } 
if(z == 3){ matFig=matAle4; } 
}else{ 
if(z == 0){ matFig=matMan1; } 
if(z == 1){ matFig=matMan2; } 
if(z == 2){ matFig=matMan3; } 
if(z == 3){ matFig=matMan4; } 
} 
// Se envia la Figura correspondiente, el numero del tablero en el momento, 
// y la matriz que contiene al tablero 
// 1 si es la figura L 
// 2 si es la figura C 
// 3 si es la figura O 
if(fig==1){ figuraEspec.crearFigEspec(1,z,matFig); } 
if(fig==2){ figuraEspec.crearFigEspec(2,z,matFig); } 
//if(fig==3){ figuraEspec.crearFigEspec(3,z,matFig); } 
} 
if(fig==1){ impFig.imprimirFigura(1); } 
if(fig==2){ impFig.imprimirFigura(2); } 
//if(fig==3){ impFig.imprimirFigura(3); } 
} 
} 
// Se crea las figuras con los parametros que se envian de la funcion crearFigura 
static class crearFigEspec{ 
void crearFigEspec(int figuraCons,int conta, int recFig[][]) { 
int cn=0; 
if(figuraCons==1){ 
// Figura L
for (int a=0;a< 5;a++){ 
for (int y=0;y< 5;y++){ 
if(y<1){ 
if(conta == 0){ figuraL1[cn]=recFig[a][y]; } 
if(conta == 1){ figuraL2[cn]=recFig[a][y]; } 
if(conta == 2){ figuraL3[cn]=recFig[a][y]; } 
if(conta == 3){ figuraL4[cn]=recFig[a][y]; } 
cn++; 
} 
if(a==4){ 
if(y<1){} 
else{ 
if(conta == 0){ figuraL1[cn]=recFig[a][y]; } 
if(conta == 1){ figuraL2[cn]=recFig[a][y]; } 
if(conta == 2){ figuraL3[cn]=recFig[a][y]; } 
if(conta == 3){ figuraL4[cn]=recFig[a][y]; } 
cn++; 
} 
} 
} 
} 
} 
if(figuraCons==2){ 
// Figura C 
for (int a=0;a< 5;a++){ 
for (int y=0;y< 5;y++){ 
if(a==0){ 
if(y<1){} 
else{ 
if(conta == 0){ figuraC1[cn]=recFig[a][y]; } 
if(conta == 1){ figuraC2[cn]=recFig[a][y]; } 
if(conta == 2){ figuraC3[cn]=recFig[a][y]; } 
if(conta == 3){ figuraC4[cn]=recFig[a][y]; } 
cn++; 
} 
} 
if(y<1){ 
if(conta == 0){ figuraC1[cn]=recFig[a][y]; } 
if(conta == 1){ figuraC2[cn]=recFig[a][y]; } 
if(conta == 2){ figuraC3[cn]=recFig[a][y]; } 
if(conta == 3){ figuraC4[cn]=recFig[a][y]; } 
cn++; 
} 
if(a==4){ 
if(y<1){} 
else{ 
if(conta == 0){ figuraC1[cn]=recFig[a][y]; } 
if(conta == 1){ figuraC2[cn]=recFig[a][y]; }
if(conta == 2){ figuraC3[cn]=recFig[a][y]; } 
if(conta == 3){ figuraC4[cn]=recFig[a][y]; } 
cn++; 
} 
} 
} 
} 
} 
} 
} 
static class imprimirFigura{ 
void imprimirFigura(int figImp){ 
imprimirFiguraEsp impFigEsp = new imprimirFiguraEsp(); 
System.out.println("tImpresión Figuras"); 
for(z=0;z<tableros;z++){ 
// Imprimir Imagen L 
if(figImp==1){ 
if(z==0){ impFigEsp.imprimirFiguraEsp(1,9,figuraL1); } 
if(z==1){ impFigEsp.imprimirFiguraEsp(2,9,figuraL2); } 
if(z==2){ impFigEsp.imprimirFiguraEsp(3,9,figuraL3); } 
if(z==3){ impFigEsp.imprimirFiguraEsp(4,9,figuraL4); } 
} 
// Imprimir Imagen C 
if(figImp==2){ 
if(z==0){ impFigEsp.imprimirFiguraEsp(1,13,figuraC1); } 
if(z==1){ impFigEsp.imprimirFiguraEsp(2,13,figuraC2); } 
if(z==2){ impFigEsp.imprimirFiguraEsp(3,13,figuraC3); } 
if(z==3){ impFigEsp.imprimirFiguraEsp(4,13,figuraC4); } 
} 
} 
} 
} 
static class imprimirFiguraEsp{ 
void imprimirFiguraEsp(int fig1,int tam,int vector[]){ 
System.out.print("ntVector Figura L #"+fig1+"n"); 
System.out.print("t----------------------------n"); 
System.out.print("t[-"); 
for (i=0;i<tam;i++){ 
System.out.print(vector[i]+"-"); 
} 
System.out.print("]n"); 
System.out.print("t----------------------------nn"); 
} 
} 
// Genera numeros aleatorios desde el 1 hasta el 75 
static class numerosAleatorios{
void numerosAleatorios(){ 
jugarBingo bingo = new jugarBingo(); 
imprMatrTableros im = new imprMatrTableros(); 
int aleat=0,t=0,aux1=0,cc=0; 
int[] numerAlea = new int[25]; 
// Llena el vector numerAlert=[] con los numeros aleatorios sin repetir 
for(cc=0;cc<25;cc++){ 
aleat = (rnd.nextInt(75-1+1)+1); 
do{ 
if(aleat == numerAlea[t]){ 
aux1=1; 
} 
t++; 
}while(t<cc); 
if(aux1 == 0){ 
numerAlea[cc] = aleat; 
} 
else{ 
cc--; 
aux1=0; 
} 
t=0; 
} 
// Imprime el numero con la letra de acuerdo al rango dado 
// ademas de esto se envia el numero aleatorio que esta en ese momento 
// para comprobar si este numero se encuentra en los tableros con los cuales 
// esta jugando la persona. 
for(cc=0;cc<25;cc++){ 
if(numerAlea[cc]>= 1 && numerAlea[cc]<=15){ 
System.out.print("B"+numerAlea[cc]+" "); 
bingo.jugarBingo(numerAlea[cc]); 
} 
if(numerAlea[cc]>=16 && numerAlea[cc]<=30){ 
System.out.print("I"+numerAlea[cc]+" "); 
bingo.jugarBingo(numerAlea[cc]); 
} 
if(numerAlea[cc]>=31 && numerAlea[cc]<=45){ 
System.out.print("N"+numerAlea[cc]+" "); 
bingo.jugarBingo(numerAlea[cc]); 
} 
if(numerAlea[cc]>=46 && numerAlea[cc]<=60){ 
System.out.print("G"+numerAlea[cc]+" "); 
bingo.jugarBingo(numerAlea[cc]); 
} 
if(numerAlea[cc]>=61 && numerAlea[cc]<=75){ 
System.out.print("O"+numerAlea[cc]+" "); 
bingo.jugarBingo(numerAlea[cc]);
} 
} 
if(manualAlea==1){ 
for(z=0;z<tableros;z++){ 
if(z==0){ im.imprMatrTableros(1,matAle1); } 
if(z==1){ im.imprMatrTableros(2,matAle2); } 
if(z==2){ im.imprMatrTableros(3,matAle3); } 
if(z==3){ im.imprMatrTableros(4,matAle4); } 
} 
} 
else{ 
for(z=0;z<tableros;z++){ 
if(z==0){ im.imprMatrTableros(1,matMan1); } 
if(z==1){ im.imprMatrTableros(2,matMan2); } 
if(z==2){ im.imprMatrTableros(3,matMan3); } 
if(z==3){ im.imprMatrTableros(4,matMan4); } 
} 
} 
} 
} 
static class jugarBingo{ 
void jugarBingo(int v){ 
int[][] matFig = new int[5][5]; 
taparTablero enviarTabTapar = new taparTablero(); 
for (z=0;z<tableros;z++){ 
// "Uno(1)" Para saber si se ingreso los tableros aleatoriamente ó "Cero(0)" para tableros 
manuales 
if(manualAlea==1){ 
if(z == 0){ matFig=matAle1; } 
if(z == 1){ matFig=matAle2; } 
if(z == 2){ matFig=matAle3; } 
if(z == 3){ matFig=matAle4; } 
}else{ 
if(z == 0){ matFig=matMan1; } 
if(z == 1){ matFig=matMan2; } 
if(z == 2){ matFig=matMan3; } 
if(z == 3){ matFig=matMan4; } 
} 
enviarTabTapar.taparTablero(v,matFig,z); 
} 
} 
} 
static class taparTablero{ 
void taparTablero(int v,int matrizTapar[][],int numFig){
int con2=0,con3=0,digite=0,cp=0; 
for(con2=0;con2<5;con2++){ 
for(con3=0;con3<5;con3++){ 
if(matrizTapar[con2][con3]==v){ 
System.out.print(" Si desea tacar el numero, digite 1."); 
System.out.print(" Sino, digite 2"); 
do{ 
System.out.print("nnDigite su opción: "); 
Scanner teclado6 = new Scanner(System.in); 
digite = Integer.parseInt(teclado6.nextLine()); 
}while(digite <1 || digite >2); 
if(digite==1){ 
matrizTapar[con2][con3]=0; // tapamos la posicion con 0 para saber que el numero 
se encontro en el tablero en juego 
for(int xy=0;xy<9;xy++){ 
if(numFig == 0){ 
if(figuraL1[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion 
con -1 para saber que hace parte de la figura 
} 
if(numFig == 1){ 
if(figuraL2[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion 
con -1 para saber que hace parte de la figura 
} 
if(numFig == 2){ 
if(figuraL3[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion 
con -1 para saber que hace parte de la figura 
} 
if(numFig == 3){ 
if(figuraL4[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion 
con -1 para saber que hace parte de la figura 
} 
} 
} 
cp=0; 
} 
else{ 
cp=1; 
} 
} 
} 
if(cp==1){ 
System.out.print(" El numero no se encuentra en su tableron"); 
cp=0; 
}
} 
} 
static class resMatr{ 
void resMatr() { 
for (i=0;i< 5;i++){ 
for (j=0;j< 5;j++){ 
matAle[i][j]=-1; 
matAle1[i][j]=-1; 
matAle2[i][j]=-1; 
matAle3[i][j]=-1; 
matAle4[i][j]=-1; 
matMan[i][j]=-1; 
matMan1[i][j]=-1; 
matMan2[i][j]=-1; 
matMan3[i][j]=-1; 
matMan4[i][j]=-1; 
} 
} 
} 
} 
}

Más contenido relacionado

La actualidad más candente

Lenguaje c diapositivas
Lenguaje c diapositivasLenguaje c diapositivas
Lenguaje c diapositivas
starduslex
 
Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)
Jsrfs Montemayor
 
Clasificacion de software y hardware.pdf
Clasificacion de software y hardware.pdfClasificacion de software y hardware.pdf
Clasificacion de software y hardware.pdf
Esa Silv:3
 
Una base de datos relacional
Una base de datos relacionalUna base de datos relacional
Una base de datos relacional
Alex Javier
 

La actualidad más candente (20)

Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Lenguaje c diapositivas
Lenguaje c diapositivasLenguaje c diapositivas
Lenguaje c diapositivas
 
Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos Estructuras De Datos-Arreglos
Estructuras De Datos-Arreglos
 
Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)
 
Unidad 3 estructura lineales
Unidad 3 estructura linealesUnidad 3 estructura lineales
Unidad 3 estructura lineales
 
Estructura de un traductor Lenguajes y automatas.pptx
Estructura de un traductor Lenguajes y automatas.pptxEstructura de un traductor Lenguajes y automatas.pptx
Estructura de un traductor Lenguajes y automatas.pptx
 
Base de datos relacionales
Base de datos relacionalesBase de datos relacionales
Base de datos relacionales
 
Ejemplos de algoritmos
Ejemplos de algoritmosEjemplos de algoritmos
Ejemplos de algoritmos
 
curso Pseint 1 (16 ejercicios basicos)
curso Pseint 1 (16 ejercicios basicos)curso Pseint 1 (16 ejercicios basicos)
curso Pseint 1 (16 ejercicios basicos)
 
INSTRUCCIONES BÁSICAS PARA C++
INSTRUCCIONES BÁSICAS PARA C++INSTRUCCIONES BÁSICAS PARA C++
INSTRUCCIONES BÁSICAS PARA C++
 
Clasificacion de software y hardware.pdf
Clasificacion de software y hardware.pdfClasificacion de software y hardware.pdf
Clasificacion de software y hardware.pdf
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Vistas
VistasVistas
Vistas
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Una base de datos relacional
Una base de datos relacionalUna base de datos relacional
Una base de datos relacional
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Procesador Memoria Dispositivos De Entrada, Salida Y Almacenamiento
Procesador   Memoria   Dispositivos De Entrada, Salida Y AlmacenamientoProcesador   Memoria   Dispositivos De Entrada, Salida Y Almacenamiento
Procesador Memoria Dispositivos De Entrada, Salida Y Almacenamiento
 
Estructura de registros
Estructura de registrosEstructura de registros
Estructura de registros
 
LibreríAs De Java
LibreríAs De JavaLibreríAs De Java
LibreríAs De Java
 

Similar a Juego Bingo - JAVA

Ejercicio propuesto 2
Ejercicio propuesto 2Ejercicio propuesto 2
Ejercicio propuesto 2
jfranco_123
 
Proyecto tres en_raya_f_inal_mathias_y_grupo
Proyecto tres en_raya_f_inal_mathias_y_grupoProyecto tres en_raya_f_inal_mathias_y_grupo
Proyecto tres en_raya_f_inal_mathias_y_grupo
Robertho Mathias
 
Ejercidos resueltos en java para el portafolio
Ejercidos resueltos en java para el portafolioEjercidos resueltos en java para el portafolio
Ejercidos resueltos en java para el portafolio
Jesica Pérez
 

Similar a Juego Bingo - JAVA (20)

Matrices
MatricesMatrices
Matrices
 
ESTRUCTURA DE DATOS ALEXIS ROJAS
ESTRUCTURA DE DATOS  ALEXIS ROJASESTRUCTURA DE DATOS  ALEXIS ROJAS
ESTRUCTURA DE DATOS ALEXIS ROJAS
 
Vector
Vector Vector
Vector
 
Pila dinamica y pila estatica
Pila dinamica y pila estaticaPila dinamica y pila estatica
Pila dinamica y pila estatica
 
Elaborar una calculadora
Elaborar una calculadoraElaborar una calculadora
Elaborar una calculadora
 
JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++
 
Ahorcado
AhorcadoAhorcado
Ahorcado
 
Ahorcado
AhorcadoAhorcado
Ahorcado
 
Ejercicio propuesto 2
Ejercicio propuesto 2Ejercicio propuesto 2
Ejercicio propuesto 2
 
Ordenamiento shell
Ordenamiento shellOrdenamiento shell
Ordenamiento shell
 
Proyecto tres en_raya_f_inal_mathias_y_grupo
Proyecto tres en_raya_f_inal_mathias_y_grupoProyecto tres en_raya_f_inal_mathias_y_grupo
Proyecto tres en_raya_f_inal_mathias_y_grupo
 
Ejercicios resueltos de programacion
Ejercicios resueltos de programacionEjercicios resueltos de programacion
Ejercicios resueltos de programacion
 
Ejercicios resueltos de programacion
Ejercicios resueltos de programacionEjercicios resueltos de programacion
Ejercicios resueltos de programacion
 
Recuperacion programas
Recuperacion programasRecuperacion programas
Recuperacion programas
 
Swrewer nuevo hoy
Swrewer nuevo hoySwrewer nuevo hoy
Swrewer nuevo hoy
 
Import java
Import javaImport java
Import java
 
Ejercicios tema1
Ejercicios tema1Ejercicios tema1
Ejercicios tema1
 
Recuperacion programas
Recuperacion programasRecuperacion programas
Recuperacion programas
 
Ejercidos resueltos en java para el portafolio
Ejercidos resueltos en java para el portafolioEjercidos resueltos en java para el portafolio
Ejercidos resueltos en java para el portafolio
 
Hechos en clase
Hechos en claseHechos en clase
Hechos en clase
 

Juego Bingo - JAVA

  • 1. /* JUEGO DEL BINGO * ESTE JUEGO FUE CREADO PARA JUGAR CON 4 TABLEROS * Y LA CREACION DE 1 UNA FIGURA (L) * CON LAS RESPECTIVAS VALIDACIONES * Y LA GENERACION DE NUMEROS ALEATORIOS */ package menus; import java.io.*; import java.util.Random; import java.util.Scanner; /** * * @author edgar * */ public class bingo { // Definicion de Variables Globales private static menu llamaMenu = new menu(); //private static int[] numerAlea = new int[25]; private static int[][] matAle = new int[5][5]; private static int[][] matAle1 = new int[5][5]; private static int[][] matAle2 = new int[5][5]; private static int[][] matAle3 = new int[5][5]; private static int[][] matAle4 = new int[5][5]; private static int[][] matMan = new int[5][5]; private static int[][] matMan1 = new int[5][5]; private static int[][] matMan2 = new int[5][5]; private static int[][] matMan3 = new int[5][5]; private static int[][] matMan4 = new int[5][5]; private static int[] figuraL1=new int[9]; private static int[] figuraL2=new int[9]; private static int[] figuraL3=new int[9]; private static int[] figuraL4=new int[9]; private static int[] figuraC1=new int[13]; private static int[] figuraC2=new int[13]; private static int[] figuraC3=new int[13]; private static int[] figuraC4=new int[13]; private static int fichas=2000,con=0,x=0,i=0,j=0,hasta=0,desde=0,aleatorio=0,manual=0,aux=0,edad=0,tableros=0,z=0, comp=0,aleMan=0,fig=0,manualAlea=0; private static String nombre="",nick=""; private static Random rnd = new Random();
  • 2. private static Scanner teclado = new Scanner(System.in); public static void main(String[] args) throws IOException{ resMatr resetear = new resMatr(); resetear.resMatr(); llamaMenu.menu(); } static class menu{ void menu(){ char letra=' '; BufferedReader teclado1 = new BufferedReader(new InputStreamReader(System.in)); try{ System.out.println("tttttt********************************"); System.out.println("tttttt********************************"); System.out.println("tttttt******* BINGO MILLONARIO *******"); System.out.println("tttttt******* MENU *******"); System.out.println("tttttt********************************"); System.out.println("tttttt********************************"); System.out.println("nttttta) Registrar Datos"); System.out.println("tttttb) Jugar Bingo"); System.out.println("tttttc) Digite 's-S' para salir"); System.out.print("nttttttElija una opcion : "); letra = teclado1.readLine().charAt(0); }catch (IOException e){ System.out.print("nError de captura en: "+e); } switch(letra){ case 'a': case 'A': registrarDatos registrar = new registrarDatos(); registrar.registrarDatos(); llamaMenu.menu(); case 'b': case 'B': // Comprueba si esta registrado comprobarRegistro comReg1 = new comprobarRegistro(); con = comReg1.comprobarRegistro(); try{ if(con == 0){ // Creacion de Instancias y objetos crearMatrizAle crearMatAle = new crearMatrizAle(); crearMatrizMan crearMatMan = new crearMatrizMan(); crearFigura figura = new crearFigura(); numerosAleatorios numAle = new numerosAleatorios(); System.out.println("nntttttRecuerde que puede jugar con 4 tableros"); System.out.println("tttttsimultanamente. Cada tablero tiene un valor");
  • 3. System.out.println("tttttde 500 fichas."); System.out.println("ntttttPuede generar los tableros aleatoriamente o"); System.out.println("tttttmanualmente"); System.out.println("ntttttSi desea generarlos aleatoriamente digite 1"); System.out.println("tttttSi desea generarlos manualmente digite 2"); do{ System.out.print("nttttttDigite su opción: "); Scanner teclado4 = new Scanner(System.in); aleMan = Integer.parseInt(teclado4.nextLine()); }while(aleMan <1 || aleMan >2); if(aleMan==1){ System.out.println("ntttttTABLEROS GENERADOS ALEATORIAMENTE"); System.out.print("nttttt¿Con cuantos Tableros desea jugar?: "); Scanner teclado3 = new Scanner(System.in); tableros = Integer.parseInt(teclado3.nextLine()); // Validacion del ingreso de un numero entre 1 y 4 if(tableros >=1 && tableros <=4){ comp = 1; } if(tableros <1 || tableros >4){ while(tableros <1 || tableros >4){ System.out.print("ntttttIngresa un numero entre 1 y 4: "); tableros = Integer.parseInt(teclado3.nextLine()); comp=1; } } if(comp == 1){ crearMatAle.crearMatrizAle(); } manualAlea=1; } if(aleMan==2){ System.out.println("ntttttTABLEROS GENERADOS MANUALMENTE"); System.out.println("nttttt¿Con cuantos Tableros desea jugar?: "); Scanner teclado3 = new Scanner(System.in); tableros = Integer.parseInt(teclado3.nextLine()); // Validacion del ingreso de un numero entre 1 y 4 if(tableros >=1 && tableros <=4){ comp = 1; } if(tableros <1 || tableros >4){ while(tableros <1 || tableros >4){ System.out.print("ntttttIngresa un numero entre 1 y 4: "); tableros = Integer.parseInt(teclado3.nextLine());
  • 4. comp=1; } } if(comp == 1){ crearMatMan.crearMatrizMan(); } manualAlea=2; } figura.crearFigura(); numAle.numerosAleatorios(); } if(con == 1){ System.out.println("nntttttDebe registrar sus datos primerontttttantes de poder jugar"); System.out.println("ttttt--------------------------------nn"); } }catch(NumberFormatException ex){ System.out.println("Ocurrio algun error en: " + ex); } this.menu(); case 's': case 'S': System.out.println("nntttttt*****************************"); System.out.println("tttttt* Gracias por Jugar BINGO *"); System.out.println("tttttt*****************************"); System.exit(0); break; default: System.out.println("nnLo siento la opción digitada no existe"); System.out.println("--------------------------------------nn"); llamaMenu.menu(); } } } static class comprobarRegistro{ int comprobarRegistro(){ if(nombre.equals("") && nick.equals("") && edad == 0){ return 1; } return 0; } } static class registrarDatos{
  • 5. void registrarDatos(){ try{ //teclado.useDelimiter(System.getProperty("line.separator")); System.out.print("Ingrese el nombre: "); nombre = teclado.next(); System.out.print("Ingrese el nick: "); nick = teclado.next(); System.out.print("Ingrese edad: "); edad = teclado.nextInt(); System.out.print("nttttt*** Usted '"+nick+"' posee "+fichas+" fichas para jugar ***nn"); } catch(NumberFormatException ex){ System.out.println("Ocurrio algun error en: " + ex); } } } static class crearMatrizAle{ void crearMatrizAle() { System.out.print("ntINGRESO DEL BINGO ALEATORIAMENTEnn"); for (z=0;z<tableros;z++){ for (i=0;i< 5;i++){ rangoMatr rangos = new rangoMatr(); rangos.rangoMatr(i); for(j=0;j<5;j++) { aleatorio = (rnd.nextInt(hasta-desde+1)+desde); do{ if(aleatorio == matAle[x][i]){ aux = 1; } x++; }while(x<j); if(aux == 0){ matAle[j][i] = aleatorio; } else{ j--; aux=0; } x=0; } } crearMatrizAleManTableros enviarTableros = new crearMatrizAleManTableros();
  • 6. enviarTableros.crearMatrizAleManTableros(1,z,matAle); fichas=fichas-500; } imprMatr imprimir = new imprMatr(); imprimir.imprMatr(1); } } static class crearMatrizMan{ void crearMatrizMan() { System.out.println("ntINGRESO DEL BINGO MANUALMENTE"); for (z=0;z<tableros;z++){ System.out.println("ntIngrese los numeros del tablero N #"+z); for (i=0;i< 5;i++){ rangoMatr rangos = new rangoMatr(); rangos.rangoMatr(i); System.out.println("n-----------------------------------------------------"); System.out.println("- Ingrese un numero que se encuentre entre "+desde+" y "+hasta+" -"); System.out.println("-----------------------------------------------------n"); for(j=0;j<5;j++) { System.out.print("fila["+j+"] columna["+i+"]: "); Scanner matrizMan = new Scanner(System.in); manual = Integer.parseInt(matrizMan.nextLine()); if(manual >= desde && manual <= hasta){ do{ if(manual == matMan[x][i]){ aux = 1; } x++; }while(x<j); if(aux == 0){ matMan[j][i] = manual; } else{ j--; aux=0; System.out.println("n---------------------------------"); System.out.println("- Ingrese un numero diferente -"); System.out.println("---------------------------------n"); } x=0; } else{
  • 7. j--; aux=0; System.out.println("n-----------------------------------------------------"); System.out.println("- Ingrese un numero que se encuentre entre "+desde+" y "+hasta+" -"); System.out.println("-----------------------------------------------------n"); } } System.out.println(); } crearMatrizAleManTableros enviarTableros = new crearMatrizAleManTableros(); enviarTableros.crearMatrizAleManTableros(2,z,matMan); fichas=fichas-500; } imprMatr imprimir = new imprMatr(); imprimir.imprMatr(2); } } static class crearMatrizAleManTableros{ void crearMatrizAleManTableros(int aleaManu,int contador,int matriz [][]) { if(aleaManu == 1){ for (i=0;i< 5;i++){ for (j=0;j< 5;j++){ if(contador == 0){ matAle1[j][i] = matriz[j][i]; } if(contador == 1){ matAle2[j][i] = matriz[j][i]; } if(contador == 2){ matAle3[j][i] = matriz[j][i]; } if(contador == 3){ matAle4[j][i] = matriz[j][i]; } } } } if(aleaManu == 2){ for (i=0;i< 5;i++){ for (j=0;j< 5;j++){ if(contador == 0){ matMan1[j][i] = matriz[j][i]; } if(contador == 1){ matMan2[j][i] = matriz[j][i]; } if(contador == 2){ matMan3[j][i] = matriz[j][i]; } if(contador == 3){ matMan4[j][i] = matriz[j][i]; } } } } } } static class imprMatr{ void imprMatr(int valor) { imprMatrTableros imprimirAleMan = new imprMatrTableros();
  • 8. if(1 == valor){ for(z=0;z<tableros;z++){ if(z==0){ imprimirAleMan.imprMatrTableros(1,matAle1); } if(z==1){ imprimirAleMan.imprMatrTableros(2,matAle2); } if(z==2){ imprimirAleMan.imprMatrTableros(3,matAle3); } if(z==3){ imprimirAleMan.imprMatrTableros(4,matAle4); } } } if(2 == valor){ for(z=0;z<tableros;z++){ if(z==0){ imprimirAleMan.imprMatrTableros(1,matMan1); } if(z==1){ imprimirAleMan.imprMatrTableros(2,matMan2); } if(z==2){ imprimirAleMan.imprMatrTableros(3,matMan3); } if(z==3){ imprimirAleMan.imprMatrTableros(4,matMan4); } } } } } static class imprMatrTableros{ void imprMatrTableros(int val2,int matrizImpresa [][]) { System.out.print("ntTablero N #"+val2); System.out.print("ntBtItNtGt On"); System.out.print("t----------------------------------n"); for (i=0;i< 5;i++){ for (j=0;j< 5;j++){ System.out.print("t"+matrizImpresa[i][j]+" "); } System.out.println(); } System.out.print("t----------------------------------n"); } } static class rangoMatr{ void rangoMatr(int val) { int valor; valor=val; if(valor == 0){ hasta=15; desde=1; } if(valor == 1){ hasta=30; desde=16; } if(valor == 2){ hasta=45; desde=31; } if(valor == 3){ hasta=60; desde=46; } if(valor == 4){ hasta=75; desde=61; } } } static class crearFigura{ void crearFigura() {
  • 9. crearFigEspec figuraEspec = new crearFigEspec(); imprimirFigura impFig = new imprimirFigura(); int[][] matFig = new int[5][5]; System.out.println("ntttttSi desea Crear la Figura L digite 1"); System.out.println("tttttSi desea Crear la Figura C digite 2"); //System.out.println("tttttSi desea Crear la Figura O digite 3"); do{ System.out.print("nttttttDigite su opción: "); Scanner teclado5 = new Scanner(System.in); fig = Integer.parseInt(teclado5.nextLine()); }while(fig <1 || fig >2); System.out.println("ntttttttFigura 'L'"); System.out.println("ttttttt*********"); for (z=0;z<tableros;z++){ // "Uno(1)" Para saber si se ingreso los tableros aleatoriamente ó "Cero(0)" para tableros manuales if(manualAlea==1){ if(z == 0){ matFig=matAle1; } if(z == 1){ matFig=matAle2; } if(z == 2){ matFig=matAle3; } if(z == 3){ matFig=matAle4; } }else{ if(z == 0){ matFig=matMan1; } if(z == 1){ matFig=matMan2; } if(z == 2){ matFig=matMan3; } if(z == 3){ matFig=matMan4; } } // Se envia la Figura correspondiente, el numero del tablero en el momento, // y la matriz que contiene al tablero // 1 si es la figura L // 2 si es la figura C // 3 si es la figura O if(fig==1){ figuraEspec.crearFigEspec(1,z,matFig); } if(fig==2){ figuraEspec.crearFigEspec(2,z,matFig); } //if(fig==3){ figuraEspec.crearFigEspec(3,z,matFig); } } if(fig==1){ impFig.imprimirFigura(1); } if(fig==2){ impFig.imprimirFigura(2); } //if(fig==3){ impFig.imprimirFigura(3); } } } // Se crea las figuras con los parametros que se envian de la funcion crearFigura static class crearFigEspec{ void crearFigEspec(int figuraCons,int conta, int recFig[][]) { int cn=0; if(figuraCons==1){ // Figura L
  • 10. for (int a=0;a< 5;a++){ for (int y=0;y< 5;y++){ if(y<1){ if(conta == 0){ figuraL1[cn]=recFig[a][y]; } if(conta == 1){ figuraL2[cn]=recFig[a][y]; } if(conta == 2){ figuraL3[cn]=recFig[a][y]; } if(conta == 3){ figuraL4[cn]=recFig[a][y]; } cn++; } if(a==4){ if(y<1){} else{ if(conta == 0){ figuraL1[cn]=recFig[a][y]; } if(conta == 1){ figuraL2[cn]=recFig[a][y]; } if(conta == 2){ figuraL3[cn]=recFig[a][y]; } if(conta == 3){ figuraL4[cn]=recFig[a][y]; } cn++; } } } } } if(figuraCons==2){ // Figura C for (int a=0;a< 5;a++){ for (int y=0;y< 5;y++){ if(a==0){ if(y<1){} else{ if(conta == 0){ figuraC1[cn]=recFig[a][y]; } if(conta == 1){ figuraC2[cn]=recFig[a][y]; } if(conta == 2){ figuraC3[cn]=recFig[a][y]; } if(conta == 3){ figuraC4[cn]=recFig[a][y]; } cn++; } } if(y<1){ if(conta == 0){ figuraC1[cn]=recFig[a][y]; } if(conta == 1){ figuraC2[cn]=recFig[a][y]; } if(conta == 2){ figuraC3[cn]=recFig[a][y]; } if(conta == 3){ figuraC4[cn]=recFig[a][y]; } cn++; } if(a==4){ if(y<1){} else{ if(conta == 0){ figuraC1[cn]=recFig[a][y]; } if(conta == 1){ figuraC2[cn]=recFig[a][y]; }
  • 11. if(conta == 2){ figuraC3[cn]=recFig[a][y]; } if(conta == 3){ figuraC4[cn]=recFig[a][y]; } cn++; } } } } } } } static class imprimirFigura{ void imprimirFigura(int figImp){ imprimirFiguraEsp impFigEsp = new imprimirFiguraEsp(); System.out.println("tImpresión Figuras"); for(z=0;z<tableros;z++){ // Imprimir Imagen L if(figImp==1){ if(z==0){ impFigEsp.imprimirFiguraEsp(1,9,figuraL1); } if(z==1){ impFigEsp.imprimirFiguraEsp(2,9,figuraL2); } if(z==2){ impFigEsp.imprimirFiguraEsp(3,9,figuraL3); } if(z==3){ impFigEsp.imprimirFiguraEsp(4,9,figuraL4); } } // Imprimir Imagen C if(figImp==2){ if(z==0){ impFigEsp.imprimirFiguraEsp(1,13,figuraC1); } if(z==1){ impFigEsp.imprimirFiguraEsp(2,13,figuraC2); } if(z==2){ impFigEsp.imprimirFiguraEsp(3,13,figuraC3); } if(z==3){ impFigEsp.imprimirFiguraEsp(4,13,figuraC4); } } } } } static class imprimirFiguraEsp{ void imprimirFiguraEsp(int fig1,int tam,int vector[]){ System.out.print("ntVector Figura L #"+fig1+"n"); System.out.print("t----------------------------n"); System.out.print("t[-"); for (i=0;i<tam;i++){ System.out.print(vector[i]+"-"); } System.out.print("]n"); System.out.print("t----------------------------nn"); } } // Genera numeros aleatorios desde el 1 hasta el 75 static class numerosAleatorios{
  • 12. void numerosAleatorios(){ jugarBingo bingo = new jugarBingo(); imprMatrTableros im = new imprMatrTableros(); int aleat=0,t=0,aux1=0,cc=0; int[] numerAlea = new int[25]; // Llena el vector numerAlert=[] con los numeros aleatorios sin repetir for(cc=0;cc<25;cc++){ aleat = (rnd.nextInt(75-1+1)+1); do{ if(aleat == numerAlea[t]){ aux1=1; } t++; }while(t<cc); if(aux1 == 0){ numerAlea[cc] = aleat; } else{ cc--; aux1=0; } t=0; } // Imprime el numero con la letra de acuerdo al rango dado // ademas de esto se envia el numero aleatorio que esta en ese momento // para comprobar si este numero se encuentra en los tableros con los cuales // esta jugando la persona. for(cc=0;cc<25;cc++){ if(numerAlea[cc]>= 1 && numerAlea[cc]<=15){ System.out.print("B"+numerAlea[cc]+" "); bingo.jugarBingo(numerAlea[cc]); } if(numerAlea[cc]>=16 && numerAlea[cc]<=30){ System.out.print("I"+numerAlea[cc]+" "); bingo.jugarBingo(numerAlea[cc]); } if(numerAlea[cc]>=31 && numerAlea[cc]<=45){ System.out.print("N"+numerAlea[cc]+" "); bingo.jugarBingo(numerAlea[cc]); } if(numerAlea[cc]>=46 && numerAlea[cc]<=60){ System.out.print("G"+numerAlea[cc]+" "); bingo.jugarBingo(numerAlea[cc]); } if(numerAlea[cc]>=61 && numerAlea[cc]<=75){ System.out.print("O"+numerAlea[cc]+" "); bingo.jugarBingo(numerAlea[cc]);
  • 13. } } if(manualAlea==1){ for(z=0;z<tableros;z++){ if(z==0){ im.imprMatrTableros(1,matAle1); } if(z==1){ im.imprMatrTableros(2,matAle2); } if(z==2){ im.imprMatrTableros(3,matAle3); } if(z==3){ im.imprMatrTableros(4,matAle4); } } } else{ for(z=0;z<tableros;z++){ if(z==0){ im.imprMatrTableros(1,matMan1); } if(z==1){ im.imprMatrTableros(2,matMan2); } if(z==2){ im.imprMatrTableros(3,matMan3); } if(z==3){ im.imprMatrTableros(4,matMan4); } } } } } static class jugarBingo{ void jugarBingo(int v){ int[][] matFig = new int[5][5]; taparTablero enviarTabTapar = new taparTablero(); for (z=0;z<tableros;z++){ // "Uno(1)" Para saber si se ingreso los tableros aleatoriamente ó "Cero(0)" para tableros manuales if(manualAlea==1){ if(z == 0){ matFig=matAle1; } if(z == 1){ matFig=matAle2; } if(z == 2){ matFig=matAle3; } if(z == 3){ matFig=matAle4; } }else{ if(z == 0){ matFig=matMan1; } if(z == 1){ matFig=matMan2; } if(z == 2){ matFig=matMan3; } if(z == 3){ matFig=matMan4; } } enviarTabTapar.taparTablero(v,matFig,z); } } } static class taparTablero{ void taparTablero(int v,int matrizTapar[][],int numFig){
  • 14. int con2=0,con3=0,digite=0,cp=0; for(con2=0;con2<5;con2++){ for(con3=0;con3<5;con3++){ if(matrizTapar[con2][con3]==v){ System.out.print(" Si desea tacar el numero, digite 1."); System.out.print(" Sino, digite 2"); do{ System.out.print("nnDigite su opción: "); Scanner teclado6 = new Scanner(System.in); digite = Integer.parseInt(teclado6.nextLine()); }while(digite <1 || digite >2); if(digite==1){ matrizTapar[con2][con3]=0; // tapamos la posicion con 0 para saber que el numero se encontro en el tablero en juego for(int xy=0;xy<9;xy++){ if(numFig == 0){ if(figuraL1[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion con -1 para saber que hace parte de la figura } if(numFig == 1){ if(figuraL2[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion con -1 para saber que hace parte de la figura } if(numFig == 2){ if(figuraL3[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion con -1 para saber que hace parte de la figura } if(numFig == 3){ if(figuraL4[xy]==v){ matrizTapar[con2][con3]=-1; } // tapamos la posicion con -1 para saber que hace parte de la figura } } } cp=0; } else{ cp=1; } } } if(cp==1){ System.out.print(" El numero no se encuentra en su tableron"); cp=0; }
  • 15. } } static class resMatr{ void resMatr() { for (i=0;i< 5;i++){ for (j=0;j< 5;j++){ matAle[i][j]=-1; matAle1[i][j]=-1; matAle2[i][j]=-1; matAle3[i][j]=-1; matAle4[i][j]=-1; matMan[i][j]=-1; matMan1[i][j]=-1; matMan2[i][j]=-1; matMan3[i][j]=-1; matMan4[i][j]=-1; } } } } }