Разобрать код - C# (191827)

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

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

Прошу пояснить код программы, что где и почему. там по идеи должно быть: 1.В каждом классе спроектировать методы инициализации объектов, редактирование свойств и методы работы с объектами. 2. Проектирование и реализация классов. Конструкторов, методов и свойств. Доступ к полям классов сделать через свойства. 4. В базовом классе реализовать 2 виртуальные методы и переопределить их в походных кдасах. 5. Сделать базовый класс абстрактным, а реализацию методов сделать в производных классах. 6. Разработать 1 интерфейсный класс и реализовать его методы в одном из производных классов. 7. Создать класс, вложенный в базовый класс, и реализовать методы работы с этим классом. 8. Создать массив объектов одного из производных классов. Использовать стандартные интерфейсы для упорядочения объектов по одним и несколькими критериями.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace PREDPR
{
    class Program
    {
        interface IComparable
        {
            void CompareTo(int obj);
            int OLD(int a, int b);
        }
 
        abstract class Firm : IComparable
        {
            public string firmname;
            public int kol_vo_years;
            public string rabochie;
            public Firm(string n, string r, int a)
            {
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
            }
            public virtual string GetName(int str) { return firmname; }
            public virtual void MyRab(string str) { return; }
            public virtual void Mysecret(int R) { return; }
 
            public void CompareTo(int kol_vo_years)
            {
                if (kol_vo_years <= 2) Console.WriteLine("Молода компанiя");
                else
                    Console.WriteLine("Kомпанiя стабiльна");
            }
            public int OLD(int a, int b)
            {
                int c;
                if (a > b) c = a;
                else c = b;
                return c;
            }
 
        }
 
        class Privat_firm : Firm
        {
            string tovar_vupiskf;
            public Privat_firm(string n, string r, int a, string f)
                : base(n, r, a)
            {
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
                tovar_vupiskf = f;
            }
            class Becpeca
            {
                string[] subject = { "небеспечне", "беспечне", "екологiчне" };
                double[] assesment = { 1, 2, 3 };
                public void StTovar(int u)
                {
                    Console.WriteLine(subject[u - 1]);
 
                }
            }
 
            Becpeca bec = new Becpeca();
 
            public override string GetName(int kod_firm)
            {
                string tovar_vupiskf;
                switch (kod_firm)
                {
                    case 1: { tovar_vupiskf = "ООО"; bec.StTovar(1); break; }
                    case 2: { tovar_vupiskf = "ВАТ"; bec.StTovar(2); break; }
                    case 3: { tovar_vupiskf = "ЗАТ"; bec.StTovar(3); break; }
                    default: tovar_vupiskf = "помилка у кодi пыдприемства"; break;
                }
                return tovar_vupiskf;
            }
            public override void MyRab(string r)
            {
                Console.WriteLine("Робочий -  " + r);
            }
 
        }
        class Dergavne : Firm
        {
            public string direktor_name;
            public int dayswork;
            public int secret_yroven;
            public Dergavne(string n, string r, int a, string f, int c, int b)
                : base(n, r, a)
            {
                //конструктор з параметрами 
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
                direktor_name = f;
                dayswork = c;
                secret_yroven = b;
 
            }
            public override void Mysecret(int secret_yroven)
            {
                Rab_secret(secret_yroven);
                Console.WriteLine("Таким чином обьект мая рiвень секретностi = " + secret_yroven);
            }
 
            public void Rab_secret(int secret_yroven)
            {
                if (secret_yroven == 0)
                    Console.WriteLine("Засекреченнiй обьект");
                else
                    Console.WriteLine("Обьект не засекреченний ");
 
            }

        }
        static void Main(string[] args)
        {
            Console.WriteLine("Розглядаеться приватна компанiя");
            Console.WriteLine();
            Privat_firm pr1 = new Privat_firm("Бензинофф", "Островушко Ю.С.", 5, "паливо");
            Console.WriteLine("Назва компанiї" + pr1.firmname);
            Console.WriteLine("ФIО Працiвника" + pr1.rabochie);
            Console.WriteLine();
            string str1 = pr1.GetName(1);
            Console.WriteLine(str1 + " " + pr1.firmname);
            pr1.MyRab("ФIО Працiвника  " + pr1.rabochie);
            Console.WriteLine();
            Console.WriteLine("Розглядается державнi компанiї");
            Console.WriteLine();
            Dergavne der1 = new Dergavne("ХИМСТАФ", "Рак Т.С.", 5, "Овчаров Р.К.", 5, 1);
            Console.WriteLine("Назва компанiї  " + der1.firmname);
            Console.WriteLine("ФIО Працiвника   " + der1.rabochie);
            Console.WriteLine();
            Dergavne der2 = new Dergavne("Рапториан", "Файзюков П.С.", 8, "Овчаров Р.К.", 5, 0);
            Console.WriteLine("Назва компанiї  " + der2.firmname);
            Console.WriteLine("ФIО Працiвника  " + der2.rabochie);
            Console.WriteLine();
            der1.Mysecret(der1.secret_yroven);
            int c = der1.OLD(der1.kol_vo_years, der2.kol_vo_years);
 
        }
    }
}

Решение задачи: «Разобрать код»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace PREDPR
{
    class Program
    {
        interface IComparable
        {
            void CompareTo(int obj);
            int OLD(int a, int b);
        }
 
        abstract class Firm : IComparable
        {
            public string firmname;
            public int kol_vo_years;
            public string rabochie;
            public Firm(string n, string r, int a)
            {
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
            }
            public virtual string GetName(int str) { return firmname; }
            public virtual void MyRab(string str) { return; }
            public virtual void Mysecret(int R) { return; }
 
            public void CompareTo(int kol_vo_years)
            {
                if (kol_vo_years <= 2) Console.WriteLine("молодая компания");
                else
                    Console.WriteLine("Kомпанiя стабильно");
            }
            public int OLD(int a, int b)
            {
                int c;
                if (a > b) c = a;
                else c = b;
                return c;
            }
 
        }
 
        class Privat_firm : Firm
        {
            string tovar_vupiskf;
            public Privat_firm(string n, string r, int a, string f)
                : base(n, r, a)
            {
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
                tovar_vupiskf = f;
            }
            class Becpeca
            {
                string[] subject = { "неббезопас", "безопас", "екологич" };
                double[] assesment = { 1, 2, 3 };
                public void StTovar(int u)
                {
                    Console.WriteLine(subject[u - 1]);
 
                }
            }
 
            Becpeca bec = new Becpeca();
 
            public override string GetName(int kod_firm)
            {
                string tovar_vupiskf;
                switch (kod_firm)
                {
                    case 1: { tovar_vupiskf = "ООО"; bec.StTovar(1); break; }
                    case 2: { tovar_vupiskf = "ВАТ"; bec.StTovar(2); break; }
                    case 3: { tovar_vupiskf = "ЗАТ"; bec.StTovar(3); break; }
                    default: tovar_vupiskf = "ошибка в коде"; break;
                }
                return tovar_vupiskf;
            }
            public override void MyRab(string r)
            {
                Console.WriteLine("Рабочий -  " + r);
            }
 
        }
        class Dergavne : Firm
        {
            public string direktor_name;
            public int dayswork;
            public int secret_yroven;
            public Dergavne(string n, string r, int a, string f, int c, int b)
                : base(n, r, a)
            {
                
                firmname = n;
                kol_vo_years = a;
                rabochie = r;
                direktor_name = f;
                dayswork = c;
                secret_yroven = b;
 
            }
            public override void Mysecret(int secret_yroven)
            {
                Rab_secret(secret_yroven);
                Console.WriteLine("Таким образом у обьекта уровень секретности = " + secret_yroven);
            }
 
            public void Rab_secret(int secret_yroven)
            {
                if (secret_yroven == 0)
                    Console.WriteLine("Засекреченный объект");
                else
                    Console.WriteLine("Обьект не засекреченный ");
 
            }
 
 
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Рассматривается частная компания");
            Console.WriteLine();
            Privat_firm pr1 = new Privat_firm("Бензинофф", "Островушко Ю.С.", 5, "паливо");
            Console.WriteLine("Название компании" + pr1.firmname);
            Console.WriteLine("ФИО работника" + pr1.rabochie);
            Console.WriteLine();
            string str1 = pr1.GetName(1);
            Console.WriteLine(str1 + " " + pr1.firmname);
            pr1.MyRab("ФИО работника  " + pr1.rabochie);
            Console.WriteLine();
            Console.WriteLine("Рассматривается государственные компании");
            Console.WriteLine();
            Dergavne der1 = new Dergavne("ХИМСТАФ", "Рак Т.С.", 5, "Овчаров Р.К.", 5, 1);
            Console.WriteLine("Название компании  " + der1.firmname);
            Console.WriteLine("ФИО работника   " + der1.rabochie);
            Console.WriteLine();
            Dergavne der2 = new Dergavne("Рапториан", "Файзюков П.С.", 8, "Овчаров Р.К.", 5, 0);
            Console.WriteLine("Название компании  " + der2.firmname);
            Console.WriteLine("ФИО работника  " + der2.rabochie);
            Console.WriteLine();
            der1.Mysecret(der1.secret_yroven);
            int c = der1.OLD(der1.kol_vo_years, der2.kol_vo_years);
 
        }
    }
}

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


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

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

6   голосов , оценка 3.833 из 5