Пример #1
0
        static void Main(string[] args)
        {
            //var animal = new Animal();
            var dog = new Dog();
            var cat = new Cat();
            var snake = new Snake();

               // animal.Name = "Pesho";

            //Console.WriteLine(animal);
            //Console.WriteLine(animal.Greet());
            //Console.WriteLine(dog.Greet());
            //Console.WriteLine(cat.Greet());
            //Console.WriteLine(snake.Greet());

            var animals = new List<Animal>();
               // animals.Add(animal);
            animals.Add(dog);
            animals.Add(cat);
            animals.Add(snake);
            animals.Add(new Dog());
            animals.Add(new Dog());
            animals.Add(new Dog());

            var collectionOfDogs = animals.OfType<Dog>().Cast<Dog>();

            foreach (var anima in animals)
            {

                Console.WriteLine(anima);
            }
        }
        public static void Main()
        {
            var dogs   = new Dictionary <string, Dog>();
            var cats   = new Dictionary <string, Cat>();
            var snakes = new Dictionary <string, Snake>();


            string input = Console.ReadLine();

            while (input != "I'm your Huckleberry")
            {
                string[] parts = input.Split(' ');

                if (parts.Length > 2)
                {
                    string type      = parts[0];
                    string name      = parts[1];
                    int    age       = int.Parse(parts[2]);
                    int    parameter = int.Parse(parts[3]);

                    switch (type)
                    {
                    case "Dog":
                        Dog newDog = new Dog
                        {
                            Name         = name,
                            Age          = age,
                            NumberOfLegs = parameter
                        };

                        dogs.Add(newDog.Name, newDog);
                        break;

                    case "Cat":
                        Cat newCat = new Cat
                        {
                            Name = name,
                            Age  = age,
                            IntelligenceQuotient = parameter
                        };

                        cats.Add(newCat.Name, newCat);
                        break;

                    case "Snake":
                        Snake newSnake = new Snake
                        {
                            Name = name,
                            Age  = age,
                            CrueltyCoefficient = parameter
                        };

                        snakes.Add(newSnake.Name, newSnake);
                        break;
                    }
                }
                else
                {
                    string animalName = parts[1];

                    if (dogs.ContainsKey(animalName))
                    {
                        dogs[animalName].ProduceSound();
                    }
                    else if (cats.ContainsKey(animalName))
                    {
                        cats[animalName].ProduceSound();
                    }
                    else if (snakes.ContainsKey(animalName))
                    {
                        snakes[animalName].ProduceSound();
                    }
                }

                input = Console.ReadLine();
            }

            foreach (var dog in dogs.Values)
            {
                Console.WriteLine("Dog: {0}, Age: {1}, Number Of Legs: {2}", dog.Name, dog.Age, dog.NumberOfLegs);
            }

            foreach (var cat in cats.Values)
            {
                Console.WriteLine("Cat: {0}, Age: {1}, IQ: {2}", cat.Name, cat.Age, cat.IntelligenceQuotient);
            }

            foreach (var snake in snakes.Values)
            {
                Console.WriteLine("Snake: {0}, Age: {1}, Cruelty: {2}", snake.Name, snake.Age, snake.CrueltyCoefficient);
            }
        }
Пример #3
0
        public static void Main()
        {
            var dogs   = new Dictionary <string, Dog>();
            var cats   = new Dictionary <string, Cat>();
            var snakes = new Dictionary <string, Snake>();

            string input = Console.ReadLine();

            while (input != "I'm your Huckleberry")
            {
                string[] tokens = input.Split(' ');
                if (tokens.Length > 2)
                {
                    string animalClass = tokens[0];
                    string name        = tokens[1];
                    int    age         = int.Parse(tokens[2]);
                    int    parameter   = int.Parse(tokens[3]);

                    switch (animalClass)
                    {
                    case "Dog":
                        var newDog = new Dog()
                        {
                            Name         = name,
                            Age          = age,
                            NumberOfLegs = parameter
                        };

                        dogs.Add(newDog.Name, newDog);
                        break;

                    case "Cat":
                        var newCat = new Cat()
                        {
                            Name = name,
                            Age  = age,
                            IQ   = parameter
                        };

                        cats.Add(newCat.Name, newCat);
                        break;

                    case "Snake":
                        var newSnake = new Snake()
                        {
                            Name    = name,
                            Age     = age,
                            Cruelty = 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
                    {
                        snakes[animalName].ProduceSound();
                    }
                }

                input = Console.ReadLine();
            }

            foreach (var dog in dogs)
            {
                Console.WriteLine("Dog: {0}, Age: {1}, Number of legs: {2}",
                                  dog.Key, dog.Value.Age, dog.Value.NumberOfLegs);
            }

            foreach (var cat in cats)
            {
                Console.WriteLine("Cat: {0}, Age: {1}, IQ: {2}",
                                  cat.Key, cat.Value.Age, cat.Value.IQ);
            }

            foreach (var snake in snakes)
            {
                Console.WriteLine("Snake: {0}, Age: {1}, Cruelty: {2}",
                                  snake.Key, snake.Value.Age, snake.Value.Cruelty);
            }
        }