private static void AgregarAbertura(string v) { try { Console.WriteLine($"Ingresar {v}"); Console.WriteLine(); Console.WriteLine("Ingrese el ancho"); int Ancho = int.Parse(Console.ReadLine()); Console.WriteLine("Ingrese el alto."); int Alto = int.Parse(Console.ReadLine()); if (v.Equals("Puerta")) { Console.WriteLine("Ingrese la cantidad de Bisagras"); int bisagras = int.Parse(Console.ReadLine()); Puerta puerta = new Puerta(); puerta.Ancho = Ancho; puerta.Alto = Alto; puerta.cantidadBisagras = bisagras; ListadoAberturas.Add(puerta); ListadoAberturasExistentes.Add(puerta); Console.WriteLine("Se ingreso Puerta"); } if (v.Equals("Ventana")) { bool dobleVidrio = false; while (true) { Console.WriteLine("Indique si es Doble Vidrio y/n"); string desicion = Console.ReadLine(); if (desicion.ToLower().Equals("y")) { Console.WriteLine("Se ingreso Ventana"); dobleVidrio = true; break; } if (desicion.ToLower().Equals("n")) { Console.WriteLine("Se ingreso Ventana"); dobleVidrio = false; break; } Console.WriteLine("Ingrese un valor valido"); } Ventana ventana = new Ventana(); ventana.Ancho = Ancho; ventana.Alto = Alto; ventana.doblevidrio = dobleVidrio; ListadoAberturas.Add(ventana); ListadoAberturasExistentes.Add(ventana); } } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("Ingrese valores en el formato adecuado"); } }
private static void MostrarAberturas(string v) { switch (v) { case "todas": for (int i = 0; i < ListadoAberturas.Count; i++) { Console.WriteLine($"Informacion de la Abertura en la posicion [{i}]"); Console.WriteLine(new string('=', 30)); if (ListadoAberturas[i].GetType().ToString().Contains("Puerta")) { Console.WriteLine("Tipo Abertura: Puerta"); Puerta puerta = (Puerta)ListadoAberturas[i]; Console.WriteLine($"Cantidad de Bisagras:{puerta.cantidadBisagras}"); } if (ListadoAberturas[i].GetType().ToString().Contains("Ventana")) { Console.WriteLine("Tipo Abertura: Ventana"); Ventana ventana = (Ventana)ListadoAberturas[i]; Console.WriteLine($"Es de Doble vidrio :{ventana.TieneDobleVidrio()}"); } Console.WriteLine($"Alto: {ListadoAberturas[i].Alto}"); Console.WriteLine($"Ancho: {ListadoAberturas[i].Ancho}"); Console.WriteLine($"SuperFicie: {ListadoAberturas[i].Alto + ListadoAberturas[i].Ancho}"); Console.WriteLine(new string('=', 30)); } break; case "existentes": for (int i = 0; i < ListadoAberturasExistentes.Count; i++) { Console.WriteLine($"Informacion de la Abertura en la posicion [{i}]"); Console.WriteLine(new string('=', 30)); if (ListadoAberturasExistentes[i].GetType().ToString().Contains("Puerta")) { Console.WriteLine("Tipo Abertura: Puerta"); Puerta puerta = (Puerta)ListadoAberturasExistentes[i]; Console.WriteLine($"Cantidad de Bisagras:{puerta.cantidadBisagras}"); } if (ListadoAberturasExistentes[i].GetType().ToString().Contains("Ventana")) { Console.WriteLine("Tipo Abertura: Ventana"); Ventana ventana = (Ventana)ListadoAberturasExistentes[i]; Console.WriteLine($"Es de Doble vidrio :{ventana.TieneDobleVidrio()}"); } Console.WriteLine($"Alto: {ListadoAberturasExistentes[i].Alto}"); Console.WriteLine($"Ancho: {ListadoAberturasExistentes[i].Ancho}"); Console.WriteLine($"SuperFicie: {ListadoAberturasExistentes[i].Alto + ListadoAberturasExistentes[i].Ancho}"); Console.WriteLine(new string('=', 30)); } break; case "superficies": int sumatoriaSuper = 0; foreach (var item in ListadoAberturas) { sumatoriaSuper += (item.Alto + item.Ancho); } Console.WriteLine(new string('=', 30)); Console.WriteLine($"La superficie total de las maderas utilizada fue: {sumatoriaSuper}"); Console.WriteLine(new string('=', 30)); break; default: break; } }