static void ExtraerLata(Expendedora expendedora) { if (Program.EstaEncendida(expendedora) && !expendedora.EstaVacia()) { Console.WriteLine(LataHelper.ListarVariedades()); try { string codigo = Validations.StringInsert("Ingrese el codigo del producto"); double volumen = Validations.DoubleInsert("Ingrese el volumen del producto", 0, double.MaxValue); double precio = Validations.DoubleInsert("Ingrese el precio del producto", 0, double.MaxValue); Lata lata = new Lata(codigo, precio, volumen); if (LataHelper.GetCodigoCorrecto(codigo) != "" && expendedora.GetLataSeleccionada(codigo, volumen, precio) != null) { double pago = Validations.DoubleInsert("Ingrese el dinero", 0, double.MaxValue); Console.WriteLine(expendedora.ExtraerLata(lata, pago).ToString()); } else if (expendedora.EstaVacia()) { throw new CapacidadInsuficienteException(); } } catch (CodigoInvalidoException e) { Console.WriteLine(e.Message + "Ingrese el codigo del producto nuevamente."); Program.ExtraerLata(expendedora); } catch (DineroInsuficienteException e) { Console.WriteLine(e.Message + "Comience nuevamente"); //Program.ExtraerLata(expendedora); Por si no posee el dinero. } catch (SinStockException e) { Console.WriteLine(e.Message); } } else if (expendedora.EstaVacia()) { throw new CapacidadInsuficienteException(); } else { Console.WriteLine("La máquina expendedora se encuentra apagada. Encender"); } }