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}");
}
}
}
}