Foro de elhacker.net

Programación => Java => Mensaje iniciado por: manuske en 22 Febrero 2020, 02:17 am



Título: Ayuda con programa en Java
Publicado por: manuske en 22 Febrero 2020, 02:17 am
Buenas! Necsito ayudar con un programa en java donde debo solicitar al usuario un asiento de avion del 00 al 20 pero debo validar si el asiento ya esta ocupado al momento de ingresarlo pero no se como hacerlo porfavor ayuda y gracias!!

MOD: titulo modificado (mas descriptivo)


Título: Re: Ayuda con programa en Java
Publicado por: ryhuso en 27 Febrero 2020, 08:32 am
podrías hacerlo con un array de tamaño 20, y creas un método para que recorra el mismo(un for )y compare con una variable igual a una cadena ya que está contiene nombres de usuario y que te devuelva una boolean si es true puedes añadir un nuevo usuario y de lo contrario muestras un mensaje que ya esta ocupado.
 


Título: Re: Ayuda con programa en Java
Publicado por: K-YreX en 29 Febrero 2020, 21:47 pm
Todo depende de cómo estructures el ejercicio ya que dependerá de las clases que estés usando y las restricciones que tenga que haber entre ellas. No es lo mismo tener por ejemplo usuarios y que cada uno almacene su número de asiento que tener únicamente los asientos.
En el segundo caso que es más sencillo, como te ha dicho @ryhuso, puedes tener un array de tipo boolean y longitud 21. La longitud tiene que ser 21 porque es el número de asientos que hay entre el 0 y el 20. Entonces a la hora de reservar un asiento, si ese índice del array vale true es que ya está ocupado, y si vale false es que está disponible y tendrás que ponerlo a true.

Pero como te digo, lo más importante es cómo tengas estructurado tu programa ya que cada implementación conllevará una solución diferente. Si quieres ayuda más concreta tendrás que dejar algo de tu código para que podamos verlo.


Título: Re: Ayuda con programa en Java
Publicado por: Serapis en 1 Marzo 2020, 16:13 pm
En realidad el programa estará controlado por el mnúmero de asientos libres.
Entrarías en un ciclo infinito, si le dices al viajero que ese asiento está ocupado y que elija otro (que tambié está ocupado).

Código:
// Inicialmente AsientosTotales = 21  (ó 20 si te expresaste mal).
// Inicialmente AsientosLibres = AsientosTotales
// Inicialmente un array (para un simple ejercicio es suficiente así):
//    Asientos(AsientosTotales) es declarado y dimensionado al número de
//    asientos totales (0 a 20). Y de tipo buleano como ya te han dicho va perfecto para ejercicios.

Si (AsientosLibres > 0)
    mensaje = "Elija su asiento entre el 0 y el 20 (algunos pueden estar ya ocupados)."
    ocupado = ""

    Hacer
        AsientoElegido = EleccionDelUsuario(mensaje + ocupado, 0, 20)
        ocupado = "El asiento " + Asientoelegido.ToString + " ya está ocupado."
    Repetir mientras (Asientos(AsientoElegido) = TRUE)

    Asientos(AsientoElegido) = TRUE
    AsientosLibres  -=1
    Si (AsientosLibres = 0)
        mensaje "Vuelo lleno..."
    fin si
Sino
    mensaje "Lo sentimos no quedan plazas en este vuelo. Elija otra fecha de vuelo u otro destino..."
fin si
Esto te puede dar alguna idea, pero tendrás que acomodarlo a tu código.

Acostúmbrate a poner algo de código o como mínimo un mensaje más descriptivo (ahora mismo es tan genérico que acepta cualquier cosa)... sino lo más probable es que ni recibas respuesta.