/** pedimos una sala y una sesion validas al usuario, y un id de compra * se guardan en los atributos id, sala y sesion */ public void pedirDatosRecogida() { this.pedirSalaSesion(); LecturaTeclado teclado = new LecturaTeclado(); id = teclado.leerNatural("Introduce un id de venta correcto:"); }
/** pedimos una sala y una sesion validas al usuario, y un no. de butacas contiguas * se guardan en los atributos noButacas, sala y sesion */ public void pedirDatosRecomendacion() { this.pedirSalaSesion(); LecturaTeclado teclado = new LecturaTeclado(); do { noButacas = teclado.leerNatural("Introduce el no. de butacas contiguas:"); } while (noButacas <= 0); }
/** * pedimos una sala, una sesion y una butaca validas al usuario * se guardan en los atributos sala, sesion y (fila, columna) */ public void pedirDatosCompra() { this.pedirSalaSesion(); if (cine.getButacasDisponiblesSesion(sala, sesion) == 0) { sesionLlena = true; } else { sesionLlena = false; char[,] estadoSesion = cine.getEstadoSesion(sala, sesion); this.mostrarEstadoSesion(estadoSesion); LecturaTeclado teclado = new LecturaTeclado(); bool sigue; do { sigue = false; fila = teclado.leerNatural("Elige una fila:"); columna = teclado.leerNatural("Elige una columna:"); // comprobamos si la fila y la columna existen en la sala if (fila < 0 || fila > estadoSesion.GetLength(0) || columna < 0 || columna > estadoSesion.GetLength(1) - calcularNumeroPasillosHastaColumna(fila, columna, estadoSesion)) { Console.WriteLine("La butaca seleccionada " + "no existe, elige otra"); sigue = true; } else // comprobamos si la butaca esta ya vendida if (estadoSesion[fila - 1, columna - 1] == 'X') { Console.WriteLine("La butaca seleccionada " + "está ocupada, elige otra"); sigue = true; } } while (sigue); } }
/** * pedimos al usuario que confirme la compra de varias butacas contiguas */ public void pedirConfirmacionCompraRecomendacion(ButacasContiguas butacas) { char[,] estadoSesion = cine.getEstadoSesion( sala, sesion); // marcamos las butacas seleccionadas por el usuario en el estado actual // de la sesion int huecos = 0; for (int i = 0; i < butacas.getNoButacas(); i++) { huecos = calcularNumeroPasillosHastaColumna(butacas.getFila(), butacas.getColumna() + i - 1, estadoSesion); estadoSesion[butacas.getFila() - 1, butacas.getColumna() + i + huecos - 1] = 'R'; } // mostramos la seleccion de butacas en consola mostrarEstadoSesion(estadoSesion); Console.WriteLine("Se recomiendan las butacas marcadas con R"); LecturaTeclado teclado = new LecturaTeclado(); respuesta = teclado.leerCaracter("Aceptas la compra? (s/n)"); }