C sharp - : Ayuda sobre un ejercicio me falta poco por terminar un ejercicio

 
Vista:
sin imagen de perfil

: Ayuda sobre un ejercicio me falta poco por terminar un ejercicio

Publicado por javier (16 intervenciones) el 28/11/2022 16:05:46
Hola me falta muy poco por terminar un ejercicio de c# de matrices y necesito vuestra ayuda gracias


Lo que me falla es que cuando se alcance el maximo de entradas me diga un error diciendo que esta lleno y por estoy con un switch para los tres valores


Enunciado del ejercicio



Escribe un programa que se encargue de controlar el aforo de un Multicine:

El cine tendrá tres salas (A, B, C), en las cuales se pasarán diariamente tres sesiones (1ª, 2ª, 3ª).
El número máximo de personas de cada una de las salas es:
Sala A = 200 personas.
Sala B = 150 personas.
Sala C = 125 personas.
Tendremos un menú con dos opciones:
Venta de entradas.
Estadística de aforo.
Para salir del programa se tendrá que pulsar la tecla ESC.

Cada vez que se realice una venta de entradas se pedirá:

El número de entradas que se van a comprar.
La sala
La sesión a la que se quiere asistir.

Las entradas vendidas quedarán registradas en la matriz bi-dimensional.
Si el número de entradas sobrepasa el aforo máximo de la sala, se indicará mediante un mensaje por pantalla.

En la opción de estadística de aforo, se mostrará una tabla de la siguiente manera:

      Sesión1 Sesión2 Sesión3
SalaA      178      100      99
SalaB      12      50      100
SalaC      32      101      55






Mi codigo








using System.Text;
internal class Program
{
public static char Salas()
{
bool result;
char sala;


do
{
Console.WriteLine("Introduce una sala ");
sala = char.Parse(Console.ReadLine());
result = sala == 'A' || sala == 'B' || sala == 'C';
if (result)
{
Console.WriteLine("Sala correcta");

}
else
{
Console.WriteLine("Sala incorrecta");
}
} while (!result);




return sala;

}
public static int EncontrarSesion()
{
bool result;
int Sesiones = 0;
do
{
Console.WriteLine("Introduce un numero de sesion");
Sesiones = int.Parse(Console.ReadLine());
result = Sesiones == 1 || Sesiones == 2 || Sesiones == 3;

if (result)
{
Console.WriteLine("Sesion encontrada");
}
else
{
Console.WriteLine("No encontrada");
}
} while (!result);
return Sesiones;

}

public static int Sala(char sala)
{
int habitacion = 0;
switch (sala)
{
case 'A':
{
habitacion = 0;
break;
}
case 'B':
{
habitacion = 1;
break;
}
case 'C':
{
habitacion = 2;
break;
}
}
return habitacion;

}

public static void VentaEntradas(int[,] aforo)
{

int entradas = 0;
int maxForo = 0;
int salas = Sala(Salas());
int Sesionesa = Sesiones(EncontrarSesion());


Console.WriteLine("Cuantas Entradas necesita");
entradas = int.Parse(Console.ReadLine());

switch (salas)
{
case 0:
{
if (aforo[salas, Sesionesa] + entradas < maxForo)
{

aforo[salas, Sesionesa] += entradas;
maxForo = 200;

}
break;
}
}





}
public static void Mostrar(int[,] aforo)
{
for (int i = 0; i < aforo.GetLength(0); i++)
{
for (int j = 0; j < aforo.GetLength(1); j++)
{
Console.Write($"{aforo[i, j],5}");
}
Console.WriteLine(" ");
}
}

public static int Sesiones(int sesion1)
{
int sesion = 0;

switch (sesion1)
{
case 1:
{
sesion = 0;
break;
}
case 2:
{
sesion = 1;
break;
}
case 3:
{
sesion = 2;
break;
}
}
return sesion;

}
private static void Main(string[] args)
{
int[,] aforoMulticine = new int[3, 3];


VentaEntradas(aforoMulticine);
Mostrar(aforoMulticine);



Console.ReadLine();


}

}



Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder