static void Main(string[] args) { int opcionMenu = 0; Expendedora expendedora = new Expendedora(); double precio; double volumen; CodigoLata codigoLata; MostrarEstadoDe(expendedora); while (opcionMenu != 6) { opcionMenu = PedirOpcionMenu(); switch (opcionMenu) { case 0: //Encender maquina expendedora.EncenderMaquina(); break; case 1: //Listado de Latas disponibles ListarLatas(expendedora); break; case 2: expendedora.EncenderMaquina(); ListarLatas(expendedora); codigoLata = PedirCodigoLata(); precio = PedirNumero("Ingrese el precio"); volumen = PedirNumero("Ingrese el volumen"); try { expendedora.AgregarLata(new Lata(codigoLata, precio, volumen)); Console.WriteLine("Lata agregada exitosamente"); } catch (CapacidadInsuficienteException ex) { Console.WriteLine(ex.Message); } break; case 3: expendedora.EncenderMaquina(); if (expendedora.GetCapacidadRestante() > 0) { expendedora.AgregarLata(new Lata("CO1", 5, 500)); } ListarLatas(expendedora); try { expendedora.ExtraerLata(PedirCodigoLata(), PedirNumero("Ingrese el dinero")); } catch (Exception e) { Console.WriteLine(e.Message); } break; case 4: expendedora.EncenderMaquina(); MostrarEstadoDe(expendedora); break; case 5: expendedora.EncenderMaquina(); Console.WriteLine(expendedora.DevuelveStock()); break; default: break; } MostrarEstadoDe(expendedora); } }
static void IngresarLata(Expendedora exp) { try { if (!exp.Encendida) { Console.WriteLine("Primero debe encender la maquina para continuar."); } else { exp.ListaLatas(); string codigo; Console.WriteLine("Ingrese un codigo de lata: "); codigo = Console.ReadLine(); Lata L1 = exp.BuscarLata(codigo); if (L1 == null) { throw new CodigoInvalidoExepcion(); } else { try { double _precio = 0; string _strprecio; bool esPrecio; // INGRESO PRECIO do { Console.Write("Ingrese precio: "); _strprecio = Console.ReadLine(); esPrecio = new Validaciones().ValidarPrecio(_strprecio, ref _precio); } while (esPrecio == false); // INGRESO VOLUMEN double _volumen = 0; string _strvolumen; bool esVolumen; do { Console.Write("Ingrese volumen: "); _strvolumen = Console.ReadLine(); esVolumen = new Validaciones().ValidarPrecio(_strvolumen, ref _volumen); } while (esVolumen == false); Lata Lata = new Lata(L1.Codigo, L1.Nombre, L1.Sabor, _precio, _volumen); exp.AgregarLata(Lata); Console.WriteLine("Lata agregada con exito"); } catch (CapacidadInsuficienteExcepcion ee) { Console.WriteLine(ee.Message); } } } } catch (CodigoInvalidoExepcion ex) { Console.WriteLine(ex.Message); } }