Foros aprenderaprogramar.com
		Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: javierx0246 en 04 de Diciembre 2022, 15:30
		
			
			- 
				Hola tengo que hacer un ejercicio sobre Flags de enumeracion y aun no lo entiendo del todo
 
 Ejercicio:
 
 Crea una aplicación para gestionar la personalización de coches en un determinado taller.
 
 Tendrás que utilizar Enumeraciones NO excluyentes, debes definir la enumeración con un mínimo de 7 colores (incluido el None).
 La aplicación permitirá añadir un color o más a la elección, eliminar un color de los que ya se habían elegido y mostrar los colores elegidos.
 El programa comenzará mostrando un menú, con las tres opciónes y la que nos permita salir.
 
 
 
 Mi codigo
 
 
 
 
 
 
 
 using System.Text;
 internal class Program
 {
 [Flags]
 public enum Color
 {
 None = 0b_0000_0000, //0
 Amarillo = 0b_0000_0001, //1
 Rojo = 0b_0000_0010,//2
 Verde = 0b_0000_0100,//4
 Violeta =0b_0000_1000 , //6
 Naranja =0b_0001_0000, //8
 Negro = 0b_0010_0000, //16
 
 
 }
 public static Object LeerEnum(Type tipo, string texto, string textoError)
 {
 
 string pregunta = "";
 bool error = false;
 
 
 foreach (string obj in Enum.GetNames(tipo))
 {
 Console.WriteLine($"{obj}");
 }
 do
 {
 Console.WriteLine("Introduce un elemento");
 pregunta = Console.ReadLine();
 if (Enum.IsDefined(tipo, pregunta))
 {
 Console.WriteLine(texto);
 error = true;
 return Enum.Parse(tipo, pregunta);
 }
 else
 {
 Console.WriteLine(textoError);
 foreach (string a in Enum.GetNames(tipo))
 {
 Console.WriteLine($" Los valores correctos son : {a}");
 }
 error = false;
 }
 } while (error == false);
 
 
 return null;
 
 }
 public static Color AñadeColor()
 {
 
 }
 private static void Main(string[] args)
 {
 Color b = (Color)LeerEnum(typeof(Color), "Se ha cogido correctamente", "Error");
 
 Console.ReadLine();
 
 
 }
 
 }
 Gracias