Загрузка данных


using System;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApp122222
{
    class Program
    {
        static void Main(string[] args)
        {
            // Создаём животных
            var lion = new Animal("Лев", true);
            var tiger = new Animal("Тигр", true);
            var elephant = new Animal("Слон", false);
            var giraffe = new Animal("Жираф", false);
            var wolf = new Animal("Волк", true);

            // Создаём зоопарки
            var zoo1 = new Zoo("Зоопарк №1", new List<Animal> { lion, tiger });
            var zoo2 = new Zoo("Зоопарк №2", new List<Animal> { elephant, giraffe, wolf });

            var zoos = new List<Zoo> { zoo1, zoo2 };

            // Выводим все зоопарки
            Console.WriteLine("=== Все зоопарки ===");
            foreach (var zoo in zoos)
            {
                Console.WriteLine($"{zoo.Title}:");
                foreach (var animal in zoo.Animals)
                {
                    Console.WriteLine($"  - {animal.Name} ({(animal.Predator ? "Хищник" : "Травоядное")})");
                }
            }

            // Найти зоопарк, где есть не менее трёх животных
            var zooWithThreeOrMore = zoos.First(z => z.Animals.Count >= 3);
            Console.WriteLine($"\n=== Зоопарк с не менее 3 животных: {zooWithThreeOrMore.Title} ===");

            // Найти зоопарк, где все животные хищники
            var allPredatorsZoo = zoos.First(z => z.Animals.All(a => a.Predator));
            Console.WriteLine($"\n=== Зоопарк, где все животные хищники: {allPredatorsZoo.Title} ===");

            // У первого зоопарка вывести всех хищных животных
            Console.WriteLine($"\n=== Хищные животные в {zoo1.Title} ===");
            var predatorsInZoo1 = zoo1.Animals.Where(a => a.Predator);
            foreach (var animal in predatorsInZoo1)
            {
                Console.WriteLine($"  - {animal.Name}");
            }

            // У второго зоопарка вывести всех травоядных животных
            Console.WriteLine($"\n=== Травоядные животные в {zoo2.Title} ===");
            var herbivoresInZoo2 = zoo2.Animals.Where(a => !a.Predator);
            foreach (var animal in herbivoresInZoo2)
            {
                Console.WriteLine($"  - {animal.Name}");
            }
        }
    }
}