Hola amigos/as programadores/as nuevamente fomentando el software libre y compartiendo el código de mi trabajo (ya me hacia falta despejarme con algún código sencillo pero interesante) y en esta ocasión surgido de los rincones de G+ encontré esta petición y pues a tirar código un rato, se trata de un pequeño sistema que muestre y/o simule una sala de cine en la cual el usuario podrá ver el estado de la sala, que se le asigne algún asiento disponible o que el mismo seleccione que asiente desea (si ya esta ocupado deberá de volver a seleccionarlo) les comparto mi código y cualquier duda y/o pregunta con gusto les apoyare.
[java]
import javax.swing.JOptionPane;
class Cinema{
public static void main(String ar[]){
int size=3;
char salaCine[][]=new char[size][size];
salaCine=create(size);
boolean ban=true; //para ejecutar programa
do{
int opcion=(int)Integer.parseInt(JOptionPane.showInputDialog("\nMenu:\n"+
"1.- Ver estado de la Sala.\n"+
"2.- Asignar lugar disponible\n"+
"3.- Seleccionar lugar especifico\n"+
"Cualquier otra.- Salir del Sistema"));
switch(opcion){
case 1: display(salaCine); break;
case 2: salaCine=asignarLugar(salaCine);break;
case 3: salaCine=escogerLugar(salaCine);break;
default: ban=false;
}
}while(ban);
}
public static char[][] create(int size){
char matriz[][]=new char[size][size];
for(int i=0;i<size;i++)
for(int j=0;j<size;j++)
matriz[i][j]=’v’;
return matriz;
}
public static void display(char mat[][]){
String cad="";
for(int i=0;i<mat.length;i++){
for(int j=0; j<mat[i].length; j++){
cad+=mat[i][j]+" ";
}
cad+="\n";
}
JOptionPane.showMessageDialog(null,cad);
}
public static char[][] asignarLugar(char mat[][]){
char matriz[][]=mat;
for(int i=0;i<matriz.length;i++){
for(int j=0;j<matriz[i].length;j++){
if(matriz[i][j]==’v’){
JOptionPane.showMessageDialog(null,"Lugar asignado en la fila "+(i+1)+
" y columna "+(j+1));
matriz[i][j]=’x’;
return matriz;
}else continue;
}
}
return matriz;
}
public static char[][] escogerLugar(char mat[][]){
char matriz[][]=mat;
do{
int fila=(int)Integer.parseInt(JOptionPane.showInputDialog("Selecciona la fila:"));
int columna=(int)Integer.parseInt(JOptionPane.showInputDialog("Selecciona la Columna:"));
if(matriz[fila-1][columna-1]==’x’) JOptionPane.showMessageDialog(null,"Vuelve a seleccionar, ese lugar ya se encuentra ocupado");
else{
JOptionPane.showMessageDialog(null,"Lugar asignado a la fila "+fila+" y columna "+columna);
matriz[fila-1][columna-1]=’x’;
break;
}
}while(1==1);
return matriz;
}
}
[/java]
Espero sea entendible el código y viva Pancho Villa… no es cierto… Viva huitzilopochtli!!!!!
Amigo muchas gracias por este aporte ya lo he puesto en marcha y funciona muy bien ,te lo agradezco de verdad y pues hay unas lineas que no entiendo,bueno no es que no las entienda completamente …..pero investigare para estar mas seguro de la función exacta que cumplen ,por otra parte sos un teso en esto y pues ojala yo algún día puede tener ese mismo conocimiento .
Hechando un vistaso muy rápido por tu pagina me doy cuenta que esta muy buena y pues si tienes un programita que me aconcejes para mi aprendizaje no estaría demás …..
De nuevo muchas gracias.
Hola Alexis muchas gracias por tu comentario y créeme algún día tendrás más conocimiento que uno solo es cuestión de pasión para ser grande hay que aceptar la critica y tomarla con alegría.
Lo que yo te recomendaría mi amigo para aprender Java es un libro con el cual yo he aprendido demasiado.
«Data Structure and Algortihms in Java» de Robert Lafore está en inglés pero créeme que aprenderás.
Saludos 😉
buenas pero como hago yo para ver todo graficamente
ocupo hacer toda una sala y no le llego por casualidad no tienes alguno ya realizado que me sirva de guia
Para hacerlo de forma gráfica puedes utilizar applets o jFrames según te convenga la lógica del programa ya esta, ya solo debes implementarlo.
hola yo estoy haciendo el mismo proyecto y mi idea no incluia arreglos ni matrices yo pensaba asignarle a cada asiento un boton jeje porque es necesario hacerlo con una matriz?? gracias
Hola yo estoy realizando una pero la mía tiene que ser con entorno gráfico y manejo una base datos, esta tiene que estarse llenando o vaciando según la programación y guardar los asientos que el usuario compre, como lo podría hacer??
estoy iniciandome e la programacion y se me hace complicado el entendmiento sin la parte grafica alguien podria proporcionarmelo como aplicacion ..gracias por favor :(…
me pueden ayudar con este programa de consola en c# :
En una central de autobuses, al comprar o reservar un boleto el pasajero selecciona el número de asiento. Los autobuses cuentan con 42 asientos, sin embargo no todas las veces se ocupan todos los asientos. Realice un programa que dada una reservación o compra de boletos de un autobús, imprima:
a) una lista de los pasajeros que ocupan las posiciones pares.
b) Cuántos lugares quedaron libres.
c) El estado en cuanto a reservación del autobús.
Hola, yo tengo que hacer algo parecido pero no tan complejo como eso,¿podrias ayudarme?
Amigo cómo puedesn ayudarme a encontrar un sistema de reservas/compra de asientos de autobus, para integrarlo en la pagina web. Es decir marcar el numero de asiento, y así comprar por parte del cliente el asiento que desee. Lo he visto en otras empresas de transportarte como el ADO.
https://www.ado.com.mx/?gclid=Cj0KCQjwla7nBRDxARIsADll0kBuj-p9XtYUEbcxxlXrHDRFODxHRXaS9_MonCglaeFqvWSaoZ1zW7EaAqeREALw_wcB#/seleccion-asientos
Hola, muchas gracias por tu aporte, me sirvió mucho tu código…
Me están pidiendo que antes de esto pida que seleccione la sala, deben ser 3, supongo que es con un arreglo unidimensional, pero no se como…
me puedes ayudar?…
muchas gracias
Hola… Una consulta este es para hacer en Netbeans? Y se podria adaptar pero que en vez de una sala de cine sea para una venta de tiquetes de avión?