Описать базовый и производные классы - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет,язык си шарп для меня новый,помогите разобраться с заданием. В программе требуется описать базовый и производные классы. Базовый класс (возможно, абстрактный) с помощью виртуальных или абстрактных методов и свойств должен задавать интерфейс для производных классов. Во всех классах следует переопределить метод Equals, чтобы обеспечить сравнение значений, а не ссылок. Функция Main должна содержать массив из элементов базового класса, заполненный ссылками на производные классы. В этой функции должно демонстрироваться использование всех разработанных элементов классов. вот что я сделал
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace La2
{
    class Person
    {
        string fio, dol, burn;
        public virtual void Method()
        {
            Console.WriteLine("Введите ФИО человека: ");
            fio = Console.ReadLine();
            Console.WriteLine("Введите должность: ");
            dol = Console.ReadLine();
            Console.WriteLine("Введите дату рождения: ");
            burn = Console.ReadLine();
        }
    }
    class Students : Person
    {
        string fio, dol, burn;
        public override void Method()
        {
            Console.WriteLine("Введите ФИО человека: ");
            fio = Console.ReadLine();
            Console.WriteLine("Введите должность: ");
            dol = Console.ReadLine();
            Console.WriteLine("Введите дату рождения: ");
            burn = Console.ReadLine();
        }
        public void Out()
        {
            Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
        }
    };
    class Teacher : Person
    {
        string fio, dol, burn;
        public override void Method()
        {
            Console.WriteLine("Введите ФИО человека: ");
            fio = Console.ReadLine();
            Console.WriteLine("Введите должность: ");
            dol = Console.ReadLine();
            Console.WriteLine("Введите дату рождения: ");
            burn = Console.ReadLine();
        }
        public void Out()
        {
            Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
        }
    };
 
    class Kaf : Person
    {
        string fio, dol, burn;
        public override void Method()
        {
            Console.WriteLine("Введите ФИО человека: ");
            fio = Console.ReadLine();
            Console.WriteLine("Введите должность: ");
            dol = Console.ReadLine();
            Console.WriteLine("Введите дату рождения: ");
            burn = Console.ReadLine();
        }
        public void Out()
        {
            Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
        }
    };

    class Program
    {
        static void Main(string[] args)
        {
            int k;
 
            Console.WriteLine("Введите количество людей: ");
            k = Convert.ToInt32(Console.ReadLine());
            Person[] a = new Person[k];
            Students[] b = new Students[k];
            Teacher[] c = new Teacher[k];
            Kaf[] d = new Kaf[k];
 
            for (int i = 0; i < k; i++)
            {
                int v = 0;
                Console.Clear();
                Console.WriteLine("Выберите должность : ");
                Console.WriteLine("1-Студент ");
                Console.WriteLine("2-Преподаватель ");
                Console.WriteLine("3-Заведующий кафедрой ");
                v = Convert.ToInt32(Console.ReadLine());
 
                switch (v)
                {
                    case 1:
                        Console.WriteLine("Студент ");
                        b[i] = new Students();
                        b[i].Method();
                        break;
                    case 2:
                        Console.WriteLine("Преподаватель");
                        c[i] = new Teacher();
                        c[i].Method();
                        break;
                    default:
                        Console.WriteLine("Заведующий");
                        d[i] = new Kaf();
                        d[i].Method();
                        break;
                }
            }
            Console.ReadLine();
            Console.Clear();
            Console.WriteLine("Вывод записей :");
            for (int i = 0; i < k; i++)
            {  b[i].Out();
            c[i].Out();
            d[i].Out(); }
            Console.ReadLine();
        }
        }
    }
что еще нужно написать? какие функции?

Решение задачи: «Описать базовый и производные классы»

textual
Листинг программы
public void Expell(Student loser)
{
// ...
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4 из 5
Похожие ответы