public static string Mostrar(Boligrafo b) { StringBuilder boligrafo = new StringBuilder(); boligrafo.Append("Color "); boligrafo.Append(b.GetColor().ToString() + " "); boligrafo.Append(b.GetTinta().ToString()); return(boligrafo.ToString()); }
static void Main(string[] args) { Console.Title = "Ej_17_Class_Boligrafo"; Boligrafo boligrafo1 = new Boligrafo(100, ConsoleColor.Blue); Boligrafo boligrafo2 = new Boligrafo(50, ConsoleColor.Red); string dibujo; Console.WriteLine("Dibujo de boligrafo1"); if (boligrafo1.Pintar(50, out dibujo)) { Console.ForegroundColor = boligrafo1.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo1.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } Console.Clear(); Console.WriteLine("Dibujo de boligrafo2"); if (boligrafo2.Pintar(30, out dibujo)) { Console.ForegroundColor = boligrafo2.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo2.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } }
static void Main(string[] args) { /* * a. La cantidad máxima de tinta para todos los bolígrafos será de 100. Generar una constante * en el Boligrafo llamada cantidadTintaMaxima donde se guardará dicho valor. * b. Generar los métodos GetColor y GetTinta para los correspondientes atributos (sólo * retornarán el valor del mismo). * c. Generar el método privado SetTinta que valide el nivel de tinta y asigne en el atributo. * i. tinta será el valor a agregar de tinta, pudiendo ser positivo (cargar tinta) o negativo * (gastar tinta) * ii. Se deberá validar que el nivel de tinta quede entre los valores válidos mayor o igual a * 0 y menor o igual a cantidadTintaMaxima. * d. Recargar() colocará a tinta en su nivel máximo de tinta. Reutilizar código. * e. En el Main, crear un bolígrafo de tinta azul (ConsoleColor.Blue) y una cantidad inicial de tinta * de 100 y otro de tinta roja (ConsoleColor.Red) y 50 de tinta. * f. El método Pintar(int, out string) restará la tinta gastada (reutilizar código SetTinta), sin * poder quedar el nivel en negativo, avisando si pudo pintar (nivel de tinta mayor a 0). * También informará mediante el out string tantos "*" como haya podido "gastar" del nivel de * tinta. O sea, si nivel de tinta es 10 y gasto es 2 valdrá "**" y si nivel de tinta es 3 y gasto es * 10 "***". * g. Utilizar todos los métodos en el Main. * h. Al utilizar Pintar, si corresponde, se deberá dibujar por pantalla con el color de dicho * bolígrafo. * Nota: Crear el constructor que crea conveniente. La clase Boligrafo y el Program deben estar en * namespaces distintos. */ Console.Title = "Ej_17"; string dibujo = ""; Boligrafo b1 = new Boligrafo(ConsoleColor.Blue, 10); //100 Boligrafo b2 = new Boligrafo(ConsoleColor.Red, 5); //50 //Console.BackgroundColor = ConsoleColor.Blue; Console.WriteLine("Boligrafo uno "); Console.Write("Cantidad de tinta " + Boligrafo.Mostrar(b1)); Console.WriteLine(""); if (b1.Pintar(8, out dibujo)) //saco los 80 y dejo solo 8 { Console.WriteLine("Pintar 8 "); Console.BackgroundColor = ConsoleColor.Blue; Console.WriteLine("Se pinto la cantidad de " + dibujo); //Console.BackgroundColor = ConsoleColor.Black; Console.ResetColor(); Console.WriteLine(); } else { Console.WriteLine(dibujo); } // Console.WriteLine("Cantidad de color que queda es " + Boligrafo.Mostrar(b1)); short cantidad = b1.GetTinta(); if (cantidad <= 0) { Console.WriteLine("No se pudo pintar mas !!!"); } if (b1.Pintar(1, out dibujo)) //10 { Console.WriteLine("Pintar 1 "); Console.BackgroundColor = ConsoleColor.Blue; Console.WriteLine("Se pinto la cantidad de " + dibujo); Console.ResetColor(); Console.WriteLine(); } else { Console.WriteLine(dibujo); } // Console.WriteLine("Cantidad de color que queda es " + Boligrafo.Mostrar(b1)); cantidad = b1.GetTinta(); if (cantidad <= 0) { Console.WriteLine("No se pudo pintar mas !!!"); } if (b1.Pintar(2, out dibujo)) //saco los 20 y dejo solo 2 { Console.WriteLine("Pintar 2 "); Console.BackgroundColor = ConsoleColor.Blue; Console.WriteLine("Se pinto la cantidad de " + dibujo); Console.ResetColor(); Console.WriteLine(); } else { Console.WriteLine(dibujo); } // Console.WriteLine("Cantidad de color que queda es " + Boligrafo.Mostrar(b1)); cantidad = b1.GetTinta(); if (cantidad <= 0) { Console.WriteLine("No se pudo pintar mas !!!"); } //Console.ResetColor(); //Console.WriteLine("*"); /*-------------- Boligrafo II ----------------------------------*/ //Console.BackgroundColor = ConsoleColor.Red; Console.WriteLine(""); Console.WriteLine(""); Console.WriteLine("Boligrafo dos "); Console.WriteLine("Cantidad de tinta " + Boligrafo.Mostrar(b2)); Console.WriteLine(""); dibujo = ""; if (b2.Pintar(5, out dibujo)) //55 { Console.WriteLine("Pintar 5 "); Console.BackgroundColor = ConsoleColor.Red; Console.WriteLine("Se pinto la cantidad de " + dibujo); Console.ResetColor(); Console.WriteLine(); } else { Console.WriteLine(dibujo); } Console.WriteLine("Cantidad de color que queda es " + Boligrafo.Mostrar(b2)); cantidad = b2.GetTinta(); if (cantidad <= 0) { Console.WriteLine("No se pudo pintar mas !!!"); } Console.ResetColor(); Console.WriteLine(""); Console.ReadKey(); }
static void Main(string[] args) { string color, cant, continuar, recarga; int cantInt; Console.Title = "Ej_17_Class_Boligrafo"; Boligrafo boligrafo1 = new Boligrafo(100, ConsoleColor.Blue); Boligrafo boligrafo2 = new Boligrafo(100, ConsoleColor.Red); Boligrafo boligrafo3 = new Boligrafo(100, ConsoleColor.Green); Boligrafo boligrafo4 = new Boligrafo(100, ConsoleColor.Yellow); Boligrafo boligrafo5 = new Boligrafo(100, ConsoleColor.White); string dibujo; do { Console.WriteLine("Indique que color desea emplear:"); Console.WriteLine("R-Rojo"); Console.WriteLine("A-Azul"); Console.WriteLine("V-Verde"); Console.WriteLine("M-Amarillo"); Console.WriteLine("B-Blanco"); color = Console.ReadLine(); Console.WriteLine("Indique la cantidad de tinta a utilizar"); cant = Console.ReadLine(); cantInt = int.Parse(cant); if (color == "A" || color == "A") { Console.WriteLine("Dibujo de boligrafoazul"); if (boligrafo1.Pintar(cantInt, out dibujo)) { Console.ForegroundColor = boligrafo1.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo1.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } } else if (color == "R" || color == "r") { Console.Clear(); Console.WriteLine("Dibujo de boligrafo rojo"); if (boligrafo2.Pintar(cantInt, out dibujo)) { Console.ForegroundColor = boligrafo2.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo2.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } } else if (color == "V" || color == "v") { Console.Clear(); Console.WriteLine("Dibujo de boligrafo verde"); if (boligrafo3.Pintar(cantInt, out dibujo)) { Console.ForegroundColor = boligrafo3.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo3.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } } else if (color == "M" || color == "m") { Console.Clear(); Console.WriteLine("Dibujo de boligrafo amarillo"); if (boligrafo4.Pintar(cantInt, out dibujo)) { Console.ForegroundColor = boligrafo4.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo4.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } } else if (color == "B" || color == "b") { Console.Clear(); Console.WriteLine("Dibujo de boligrafo blanco"); if (boligrafo5.Pintar(cantInt, out dibujo)) { Console.ForegroundColor = boligrafo5.GetColor(); Console.WriteLine(dibujo); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Nivel de tinta restante: {0}", boligrafo5.GetTinta()); Console.ReadKey(); } else { Console.WriteLine("Nivel de tinta requerido superior a la capacidad disponible"); } } else { Console.WriteLine("No ha agregado un color válido"); } Console.Clear(); Console.WriteLine("¿Desea Continuar?"); continuar = Console.ReadLine(); Console.WriteLine("¿Desea recargar la tinta?"); recarga = Console.ReadLine(); if (recarga == "s" || recarga == "S") { boligrafo1.Recargar(); boligrafo2.Recargar(); boligrafo3.Recargar(); boligrafo4.Recargar(); boligrafo5.Recargar(); } } while (continuar != "n" && continuar != "N"); }