Recursividad - Arreglos Booleanos - Clase Arrays
Una pequeña aerolínea acaba de comprar una computadora para su nuevo sistema de reservaciones automatizado.
Se le ha pedido a usted que desarrolle el nuevo sistema.
Usted escribirá una aplicación para asignar asientos en cada vuelo del único avión de la aerolínea (capacidad: 10 asientos).
Su aplicación debe mostrar las siguientes alternativas:
Por favor escriba 1 para Primera Clase y Por favor escriba 2 para Económico.
Si el usuario escribe 1, su aplicación debe asignarle un asiento en la sección de primera clase (asientos 1 a 5).
Si el usuario escribe 2, su aplicación debe asignarle un asiento en la sección económica (asientos 6 a 10).
Su aplicación deberá entonces imprimir un pase de abordaje, indicando el número de asiento de la persona
y si se encuentra en la sección de primera clase o clase económica del avión.
Use un arreglo unidimensional del tipo primitivo boolean para representar la tabla de asientos del avión.
Inicialice todos los elementos del arreglo con false para indicar que todos los asientos están vacíos.
A medida que se asigne cada asiento,
establezca los elementos correspondientes del arreglo en true para indicar que ese asiento ya no está disponible.
Su aplicación nunca deberá asignar un asiento que ya haya sido asignado.
Cuando esté llena la sección económica,
su programa deberá preguntar a la persona si acepta ser colocada en la sección de primera clase (y viceversa).
Si la persona acepta, haga la asignación de asiento apropiada.
Si no acepta, imprima el mensaje "El próximo vuelo sale en 3 horas".
package Aereolinea;
import java.util.Arrays;
import java.util.Scanner;
/**
*
* @author Java Universidad
*/
public class VentaDeBoletos {
int i=0, j=5;
int numAsiento=0;
int llenoA=0;
int llenoB=0;
int opcion;
int salir=0;
Scanner leer = new Scanner (System.in);
boolean [] vuelo= new boolean[10];
public VentaDeBoletos(){
Arrays.fill(vuelo, Boolean.FALSE);
}
public int getSalir(){
return salir;
}
public void asignar( int asiento){
if(asiento ==1)
{
if(vuelo[i]==false){
vuelo[i]= true;
numAsiento = (i+1);
i=0; llenoA++;
System.out.println("Tu asiento asignado es:" + numAsiento);
System.out.println("Tu asiento es de Primera Clase");
}
else{
if(i<4){
i++; asignar (1); }
else{
System.out.println("Lo sientimos 'Primera Clase ' esta llena ");
System.out.println("Desea un boleto de clase Economica \n1. Si \n2. No");
try{ opcion = Integer.parseInt(leer.nextLine());
if(opcion ==1){
if(llenoB<5){ asignar(2); }
else{ System.out.println("El avion esta lleno \n El proximo vuelo sale en 3 horas ");
salir =1; }
}
else{ System.out.println("El avion esta lleno \n El proximo vuelo sale en 3 horas ");
salir =1; }
}
catch(Exception ex){
}
}
}
}
//Clase Economica
if(asiento ==2)
{
if(vuelo[j]==false){
vuelo[j]= true;
numAsiento = (j+1);
j=5; llenoB++;
System.out.println("Tu asiento asignado es:" + numAsiento);
System.out.println("Tu asiento es de Clase Economica");
} else{
if(j<9){ j++; asignar (2); }
else{
System.out.println("Lo sientimos 'Clase Economica' esta llena ");
System.out.println("Desea un boleto de Primera clase \n1. Si \n2. No");
try{
opcion = Integer.parseInt(leer.nextLine());
if(opcion ==1){
if(llenoA<5){ asignar(2); }
else{
System.out.println("El avion esta lleno \n El proximo vuelo sale en 3 horas ");
salir =1;
}
}
else{System.out.println("El avion esta lleno \n El proximo vuelo sale en 3 horas ");
salir =1; } }
catch(Exception ex){
}
}
}
}
}
public void mostrar(){
for (int k = 0; k < vuelo.length; k++) {
if(k==0){
System.out.println("********************Primera Clase *********************\n\t Asiento 1\t Asiento 2\t Asiento 3\t Asiento 4\t Asiento 5");
}
if(vuelo[k]==true){
System.out.print("\tAsignado");
}
else{System.out.println("\tNo Asignado");}
if(k==4){
System.out.print("\n\n ***************************Clase Economica**********"
+ "\n\tAsiento 6\tAsiento 7\tAsiento 8\tAsiento 9\tAsiento 10");
}
}
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package Aereolinea;
import java.util.Scanner;
/**
*
* @author Java Universidad
*/
public class Aereolinea {
public static void main (String []args){
VentaDeBoletos venta = new VentaDeBoletos();
int asiento=0;
int opcion=0;
Scanner leer = new Scanner (System.in);
System.out.println("Bienvenidos a la AereoLinea Java Universidad");
do{
do{
System.out.println("Elige el Tipo de Boleto");
System.out.println("1. Primera Clase \t2.Clase Economica ");
try{
asiento = Integer.parseInt(leer.nextLine());
}catch(Exception ex){
System.out.println("Hubo un error");
}
}while(asiento!=1 && asiento!=2 );
venta.asignar(asiento);
if(venta.getSalir()==1){
break;
}
System.out.println("¿Desea comprar otro boleto \n1. Si \n 2.No.?");
try{
opcion = Integer.parseInt(leer.nextLine());
}catch(Exception ex){
opcion=2;
}
}while(opcion==1);
venta.mostrar();
}
}
https://www.facebook.com/Java-Universidad-1074240326091464
https://www.youtube.com/channel/UCqv4B3AYw3HaTSoXsGRfU1w?view_as=subscriber
https://www.facebook.com/Java-Universidad-1074240326091464
https://www.youtube.com/channel/UCqv4B3AYw3HaTSoXsGRfU1w?view_as=subscriber
Comentarios
Publicar un comentario