using System; using System.Collections.Generic; using System.Linq; using System.Text; public class Program { public class Animal { public string Nome { get; set; } private string Classificacao { get; set; } public void CriarAnimal() { Console.Write("\nDigite o nome do seu animal: "); this.Nome = Console.ReadLine(); Console.Write("\nDigite a classificação do animal: "); this.Classificacao = Console.ReadLine(); } public void MostrarAnimal() { Console.WriteLine("\nNome: {0} - Classificação: {1}", this.Nome, this.Classificacao); } public virtual void EmitirSom() { Console.WriteLine("\nO animal emitiu som"); } } public class Cachorro : Animal { public override void EmitirSom() { Console.WriteLine("\nAu Au Au..."); } } public class Gato : Animal { public override void EmitirSom() { Console.WriteLine("\nMiau Miau Miau..."); } } public class Galinha : Animal { public override void EmitirSom() { Console.WriteLine("\nCó Có Có..."); } } public static void Main() { Animal obj_cachorro = new Cachorro(); Animal obj_gato = new Gato(); Animal obj_galinha = new Galinha(); Animal obj_animal = new Animal(); string op_menu; do{ Console.BackgroundColor = ConsoleColor.Blue; Console.Clear(); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\n\n\t\tCriador e Manipulador de animais orientado a objeto"); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("\n\n\t1 - Criar Cachorro\n\t2 - Criar Gato\n\t3 - Criar Galinha"); Console.WriteLine("\t4 - Emitir Som Cachorro\n\t5 - Emitir Som Gato\n\t6 - Emitir Som Galinha"); Console.WriteLine("\t7 - Mostrar todos animais\n\t8 - Sair"); Console.Write("\n\tDigite qual opção deseja: "); op_menu = Console.ReadLine(); switch(op_menu) { case "1": obj_cachorro.CriarAnimal(); break; case "2": obj_gato.CriarAnimal(); break; case "3": obj_galinha.CriarAnimal(); break; case "4": obj_cachorro.EmitirSom(); break; case "5": obj_gato.EmitirSom(); break; case "6": obj_galinha.EmitirSom(); break; case "7": if (obj_cachorro.Nome != null) obj_cachorro.MostrarAnimal(); else Console.WriteLine("\nCachorro não foi adicionado ainda!"); if (obj_gato.Nome != null) obj_gato.MostrarAnimal(); else Console.WriteLine("\nGato não foi adicionado ainda!"); if (obj_galinha.Nome != null) obj_galinha.MostrarAnimal(); else Console.WriteLine("\nGalinha não foi adicionado ainda!"); break; case "8": break; default: Console.WriteLine("\n\nOpção Inválida\n\n"); break; } if (op_menu != "8") { Console.Write("\n\nPressione qualquer tecla para continuar. . ."); Console.ReadKey(); Console.Clear(); } }while(op_menu!="8"); } }