Una pequeña aerolínea acaba de comprar una computadora para su nuevo sistema automático de reservaciones. A usted se le ha pedido que programe el nuevo sistema. Usted debe escribir un programa que asigne los asientos, en cada vuelo, del único avión de la aerolínea (capacidad : 30 asientos).
su programa debe desplegar el siguiente menú de alternativas:
digite 1 para primera clase
digite 2 para económico
Si la persona digita 1, su programa debe asignar un asiento en la sección de primera clase (asientos del 1 al 10). Si la persona digita 2, su programa debe asignar un asiento en la sección económica (asientos 11 al 30). Su programa debe imprimir un pase de abordar que indique el número de asiento de la persona y si está en la sección de primera clase o en la sección económica del avión.
Utilice un arreglo con un solo subíndice para presentar los asientos del avión. Inicialice en cero todos los elementos del arreglo para indicar que todos los asientos estan vacíos.Mientras se asigna cada asiento, el valor de los elemntos correspondientes del arreglo se establece en 1, para indicar que el asiento ya no está disponible.
Por supuesto, su programa nunca debe asignar un asiento que ya está asignado. Cuando la sección de primera clase esta llena, su programa debe preguntar a la persona que se le coloque en la sección económica ( y viceversa).
Si acepta, entonces haga la asignación apropiada del asiento. Si no acepta, entonces despliegue el mensaje "el siguiente vuelo parte en tres horas".
using System;
using System.Collections.Generic;
using System.Text;
namespace practica3
{
class arreglo
{
int[] datos;
int i, cPrimera, cEconomico;
public arreglo(int n)
{
datos = new int[n];
for (i = 0; i < 30; i++)
{
datos[i] = 0;
}
i = cPrimera = 0;
cEconomico = 10;
}
public void EstablecerDato(int j)
{
datos[j] = 1;
}
public int obtnerDato(int j)
{
return datos[j];
}
public int[] Datos
{
get { return datos; }
set { datos = value; }
}
public int I
{
get { return i; }
set { i = value; }
}
public int Cprimera
{
get { return cPrimera; }
set { cPrimera = value; }
}
public int Ceconomico
{
get { return cEconomico; }
set { cEconomico = value; }
}
}
class Program
{
public static void Main(string[] args)
{
int opcion;
char opc;
arreglo avion = new arreglo(30);
do
{
Console.Clear();
Console.WriteLine("\nBIENVENIDOS A AEROLINEAS VIUX ");
Console.WriteLine("\n CONTAMOS CON DOS TIPOS DE CLASES Y SON LAS SIGUIENTES....");
Console.WriteLine("\nPor favor, digite 1 para Premier ");
Console.WriteLine("\nPor favor digite 2 para normal");
Console.Write("\nque opcion desea ");
opcion = int.Parse(Console.ReadLine());
if (opcion == 1)
{
if (avion.Cprimera < 9)
{
avion.EstablecerDato(avion.Cprimera);
Console.WriteLine("\nNo de asiento {0}", avion.Cprimera + 1);
Console.WriteLine("pase de abordar clase premier");
avion.Cprimera++;
}
else
{
Console.WriteLine("Primera clase no tiene asientos disponibles");
Console.WriteLine("Desea en clase para pobres (s/n): ");
opc = char.Parse(Console.ReadLine());
if (opc == 's' || opc == 'S')
{
if (avion.Ceconomico < 30)
{
avion.EstablecerDato(avion.Ceconomico);
Console.WriteLine("\nNo de asiento {0}", avion.Ceconomico + 1);
Console.WriteLine("\npase de abordar clase normal");
avion.Ceconomico++;
}
}
else
{ Console.WriteLine("el siguiente vuelo parte en tres horas"); }
}
}
else
{
if (opcion == 2)
{
if (avion.Ceconomico < 29)
{
avion.EstablecerDato(avion.Ceconomico);
Console.WriteLine("No de asiento: {0} ", avion.Ceconomico + 1);
Console.WriteLine("pase de abordar de clase economica");
avion.Ceconomico++;
}
else
{
Console.WriteLine("Clase Economica no tiene asientos disponible ");
Console.WriteLine("desea en Primera clase (s/n) : ");
opc = char.Parse(Console.ReadLine());
if (opc == 's' || opc == 'S')
{
if (avion.Cprimera < 9)
{
avion.EstablecerDato(avion.Cprimera);
Console.WriteLine("No de asiento : {0} ", avion.Cprimera + 1);
Console.WriteLine("pase de abordar Primera clase");
avion.Cprimera++;
}
}
else
{
Console.WriteLine("el siguiente vuelo parte en tres horas");
}
}
}
else
{
Console.WriteLine("Presiono opcion equívocada");
}
}
Console.Write("deseas continuar (s/n) : ");
opc = char.Parse(Console.ReadLine());
}
while (opc == 'S' || opc == 's');
}
}
}
Monday, October 13, 2008
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment