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


using System;
using System.Collections.Generic;

public class Animal
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Species { get; set; }
    public int Age { get; set; }

    public Animal(int id, string name, string species, int age)
    {
        Id = id;
        Name = name;
        Species = species;
        Age = age;
    }

    public void MakeSound()
    {
        Console.WriteLine($"{Species} издает звук!");
    }

    public string GetInfo()
    {
        return $"ID: {Id}, Имя: {Name}, Вид: {Species}, Возраст: {Age}";
    }
}

public class Zoo
{
    private List<Animal> animals = new List<Animal>();

    public void AddAnimal(Animal animal)
    {
        animals.Add(animal);
        Console.WriteLine($"Добавлено: {animal.Name}");
    }

    public void RemoveAnimal(int id)
    {
        Animal animal = animals.Find(a => a.Id == id);
        if (animal != null)
        {
            animals.Remove(animal);
            Console.WriteLine($"Удалено: {animal.Name}");
        }
        else
        {
            Console.WriteLine($"Не найден ID: {id}");
        }
    }

    public void ShowAllAnimals()
    {
        Console.WriteLine("\nВсе животные:");
        foreach (var animal in animals)
        {
            Console.WriteLine(animal.GetInfo());
        }
    }

    public List<Animal> FindAnimalsBySpecies(string species)
    {
        return animals.FindAll(a => a.Species == species);
    }
}

class Program
{
    static void Main()
    {
        Zoo zoo = new Zoo();

        // Добавление
        zoo.AddAnimal(new Animal(1, "Симба", "Лев", 5));
        zoo.AddAnimal(new Animal(2, "Марти", "Зебра", 3));
        zoo.AddAnimal(new Animal(3, "Алекс", "Лев", 4));

        // Показать всех
        zoo.ShowAllAnimals();

        // Поиск
        Console.WriteLine("\nПоиск львов:");
        var lions = zoo.FindAnimalsBySpecies("Лев");
        foreach (var lion in lions)
        {
            Console.WriteLine(lion.GetInfo());
        }

        // Звуки
        Console.WriteLine("\nЗвуки:");
        new Animal(0, "", "Лев", 0).MakeSound();

        // Удаление
        zoo.RemoveAnimal(2);
        
        // Показать после удаления
        zoo.ShowAllAnimals();
    }
}