Home
ARINA edited this page 9 months ago

interface Birds

{
    void inputInfo();
    string outputInfo();
    void suitability();
}

internal class Poultry: Birds //домашние птицы
{
    protected string type;
    //ввод информации
    public void inputInfo ()
    {
        Console.Write("Вид: ");
        type = Console.ReadLine();
    }
    //вывод информации
    public virtual string outputInfo()
    {
        return "Вид птицы: " + type;
    }
    //пригодность птички к жизни
    public void suitability()
    {
        Console.WriteLine("Птица здорова?");
        string b = Console.ReadLine().ToLower(); //ввод и приведение к одному регистру
        if ( b == "да" || b == "yes" || b == "true") // сравнение с возможными вариантами
        {
            Console.WriteLine("пригодна для жизни"); // итог
        }
        else
        {
            Console.WriteLine("не пригодна для жизни");  // итог
        }
    }
}
internal class Chicken: Poultry
{
    string name; //имя курицы
    //переопределение метода ввод информации
    new public void inputInfo()
    {
        base.type = "Курица"; //передаем определенное значение
        Console.Write("Имя курицы: ");
        name = Console.ReadLine();
    }
    //замещение метода вывод информации
    public override string outputInfo()
    {
        return base.outputInfo() + "\nИмя: " + name;
    }
    //КПД курицы
    public void efficiency()
    {
        Console.WriteLine("Сколько яиц несет курица в месяц?");
        int count = Convert.ToInt32(Console.ReadLine());
        double kpd = count / 24.0 * 100; //кпд = кол-во яиц местной курицы/ на кол-во макимальное * 100%
        Console.WriteLine($"КПД курицы состовляет {kpd}%");
    }
    ==================
    static void Main(string[] args)
    {
        Poultry b1 = new Poultry();
        b1.inputInfo();
        b1.outputInfo();
        b1.suitability();

        Chicken ch1 = new Chicken();
        ch1.inputInfo();
        Console.WriteLine(ch1.outputInfo());
        ch1.suitability();
        ch1.efficiency();
    }