public static void Main() { Dictionary <string, Dog> dogs = new Dictionary <string, Dog>(); Dictionary <string, Cat> cats = new Dictionary <string, Cat>(); Dictionary <string, Snake> snakes = new Dictionary <string, Snake>(); string inputLine = Console.ReadLine(); while (inputLine != "I'm your Huckleberry") { string[] tokens = inputLine.Split(' '); if (tokens.Length > 2) { string type = tokens[0]; string name = tokens[1]; int age = int.Parse(tokens[2]); int parameter = int.Parse(tokens[3]); switch (type) { case "Dog": Dog newDog = new Dog(); newDog.Name = name; newDog.Age = age; newDog.NumberOfLegs = parameter; dogs.Add(newDog.Name, newDog); break; case "Cat": Cat newCat = new Cat(); newCat.Name = name; newCat.Age = age; newCat.IntelligenceQuotient = parameter; cats.Add(newCat.Name, newCat); break; case "Snake": Snake newSnake = new Snake(); newSnake.Name = name; newSnake.Age = age; newSnake.CrueltyCoefficient = parameter; snakes.Add(newSnake.Name, newSnake); break; } } else { string animalName = tokens[1]; if (dogs.ContainsKey(animalName)) { dogs[animalName].ProduceSound(); } else if (cats.ContainsKey(animalName)) { cats[animalName].ProduceSound(); } else if (snakes.ContainsKey(animalName)) { snakes[animalName].ProduceSound(); } } inputLine = Console.ReadLine(); } foreach (var dog in dogs.Values) { Console.WriteLine( $"Dog: {dog.Name}, Age: {dog.Age}, Number Of Legs: {dog.NumberOfLegs}"); } foreach (var cat in cats.Values) { Console.WriteLine( $"Cat: {cat.Name}, Age: {cat.Age}, IQ: {cat.IntelligenceQuotient}"); } foreach (var snake in snakes.Values) { Console.WriteLine( $"Snake: {snake.Name}, Age: {snake.Age}, Cruelty: {snake.CrueltyCoefficient}"); } }
public static void Main() { var dogs = new List <Dog>(); var cats = new List <Cat>(); var snakes = new List <Snake>(); var entered = Console.ReadLine(); while (entered != "I'm your Huckleberry") { var parameters = entered.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).ToList(); var kind = parameters[0]; var name = parameters[1]; var age = string.Empty; var property = string.Empty;; if (parameters.Count > 2) { age = parameters[2]; property = parameters[3]; } if (kind == "Dog") { var newDog = new Dog(); { newDog.Class = kind; newDog.Name = name; newDog.Age = age; newDog.Legs = property; } dogs.Add(newDog); } else if (kind == "Cat") { var newCat = new Cat(); { newCat.Class = kind; newCat.Name = name; newCat.Age = age; newCat.IQ = property; } cats.Add(newCat); } else if (kind == "Snake") { var newSnake = new Snake(); { newSnake.Class = kind; newSnake.Name = name; newSnake.Age = age; newSnake.Cruelty = property; } snakes.Add(newSnake); } else { foreach (var item in dogs) { if (item.Name == name) { Console.WriteLine(Dog.ProduceSound()); } } foreach (var item in cats) { if (item.Name == name) { Console.WriteLine(Cat.ProduceSound()); } } foreach (var item in snakes) { if (item.Name == name) { Console.WriteLine(Snake.ProduceSound()); } } } entered = Console.ReadLine(); } foreach (var item in dogs) { Console.WriteLine($"{item.Class}: {item.Name}, Age: {item.Age}, Number Of Legs: {item.Legs}"); } foreach (var item in cats) { Console.WriteLine($"{item.Class}: {item.Name}, Age: {item.Age}, IQ: {item.IQ}"); } foreach (var item in snakes) { Console.WriteLine($"{item.Class}: {item.Name}, Age: {item.Age}, Cruelty: {item.Cruelty}"); } }