Файл: Объектноориентированное программирование.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.12.2023

Просмотров: 62

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РФ ФГАОУ ВО «СЕВЕРО-КАВКАЗСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ» ИНСТИТУТ ЦИФРОВОГО РАЗВИТИЯ ИМЕНИ ПРОФЕССОРА Н.И. ЧЕРВЯКОВАКАФЕДРА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ АВТОМАТИЗИРОВАННЫХ СИСТЕМОтчёт по лабораторной работе №2



Объекты и классы (конструкторы, деструкторы)По дисциплине«Объектно-ориентированное программирование»Выполнил:Гочияев Рустам Рашидовичстудент 3 курса группы ИБС-с-о-20-1специальности 10.05.03«Информационная безопасностьавтоматизированных систем»очной формы обученияПроверил:Соломонов Дмитрий ВладимировичСтаврополь, 2022Лабораторная работа 2Объекты и классы (конструкторы, деструкторы).Вариант 5Цель: познакомиться с основой объектного подхода в языке C#, созданием объектов, классов и механизмом наследования.Задание. Организация, страховая компания, нефтяная компания, завод.Код программы прикреплён в приложении А.Пример работы программы:Рисунок 1 – Страховая компанияРисунок 2 – Нефтяная компанияРисунок 3 – ЗаводВывод: мы познакомились с основой объектного подхода в языке C#, созданием объектов, классов и механизмом наследования.Приложение А.Program.csusing System;namespace Лаба2{internal class Program{static void Main(string[] args) { string typeoforganization; int maxrevenue = 0; int mustbe = 0; Console.WriteLine("Выберите тип организации:\n 1. Страховая компания\n 2. Нефтяная компания\n 3. Завод\n"); int way = Convert.ToInt32(Console.ReadLine()); switch (way) { case 1: typeoforganization = "Страховая компания"; break; case 2: typeoforganization = "Нефтяная компания"; break; case 3: typeoforganization = "Завод";
break; default: typeoforganization = ""; break; }if (way == 1) { insurancecompany my_ins = new insurancecompany(typeoforganization, maxrevenue, mustbe); my_ins.Plann(); my_ins.PlanExecution(); my_ins.Check(); my_ins.SumM(); my_ins.Resultins(); } else if (way == 2) { oilcompany my_oil = new oilcompany(typeoforganization, maxrevenue, mustbe); my_oil.Plann(); my_oil.PlanExecution(); my_oil.Check(); my_oil.SumM(); my_oil.Resultoil(); } else if (way == 3) { factory my_factory = new factory(typeoforganization, mustbe, maxrevenue); my_factory.Plann(); my_factory.PlanExecution(); my_factory.Check(); my_factory.SumM(); my_factory.Resultfactory(); } } }} Organization.csusing System;using System.Collections.Generic;using System.Text;namespace Лаба2{public abstract class Organization{public int MaxRevenue;public int MustBe;public bool RevenueOk;protected int RevenueReceived = 0;public string TypeOfOrganization;public Organization(string typeoforganization, int mustbe, int maxrevenue){TypeOfOrganization = typeoforganization; MustBe = mustbe;MaxRevenue = maxrevenue;}public virtual void GetMaxRevenue(){if (TypeOfOrganization == "Страховая компания"){MaxRevenue = 48000;}else if (TypeOfOrganization == "Нефтяная компания"){MaxRevenue = 70000;}else if (TypeOfOrganization == "Завод"){MaxRevenue = 40000;}}public virtual void Plan(){Console.WriteLine($"Выручка по плану{MaxRevenue}\n");}public virtual void PlanExecution(){Console.WriteLine($"\n Введите ваши средства: ");RevenueReceived = Convert.ToInt32(Console.ReadLine());}public virtual void Check(){if (RevenueOk == true){Console.WriteLine("\n Отчёт был отправлен ");}else{Console.WriteLine("\n Необходимо сверить данные о работе предприятия");}}public virtual void SumM(){if (RevenueOk == false){if (TypeOfOrganization == "Завод"){MustBe = 250;Console.WriteLine($"Должно быть изготовлено материала: {MustBe} штук.");}else if (TypeOfOrganization == "Страховая компания"){MustBe = 100;Console.WriteLine($"Должно быть застраховано новых клиентов: {MustBe} человек.");}else if (TypeOfOrganization == "Нефтяная компания"){MustBe = 10;Console.WriteLine($"Должно быть добыто: {MustBe} баррелей.");}}}}}insurancecompany.csusing System;using System.Collections.Generic;using System.Text;namespace Лаба2{class insurancecompany : Organization{int received =0;public insurancecompany(string typeoforganization, int mustbe, int maxrevenue) : base(typeoforganization, mustbe, maxrevenue) { }public void Plann(){base.GetMaxRevenue();Console.WriteLine($"Выручка по плану: {MaxRevenue} рублей");}public override void PlanExecution(){base.PlanExecution();if (RevenueReceived >= MaxRevenue){Console.WriteLine("Вы выполнили план по выручке, можно не сверять документы");RevenueOk = true;}else{Console.WriteLine("Вы не выполнили план по выручке");Console.WriteLine($"У вас недосдача: {MaxRevenue - RevenueReceived} рублей");RevenueOk = false;}}public override void SumM(){if (RevenueOk == false)

{base.SumM();Console.WriteLine("Введите количество изготовленного материала: ");received = Convert.ToInt32(Console.ReadLine());}}public void Resultins(){if (RevenueOk == false){if (received < MustBe){Console.WriteLine("План по количеству застрахованных человек не выполнен");Console.WriteLine("Необходимо запустить рекламу и сделать скидочные купоны");}else if (received == MustBe){Console.WriteLine("План по количеству застрахованных человек выполнен"); Console.WriteLine("Будут проверены все денежные переводы.Необходимо найти недосдачу.Будет проверка на предприятии");}else if (received > MustBe){Console.WriteLine("План по количеству застрахованных человек перевыполнен");Console.WriteLine("Будут проверены все денежные переводы. Будет проверка на предприятии");}}}}}oilcompany.csusing System;using System.Collections.Generic;using System.Text;namespace Лаба2{class oilcompany : Organization{int received =0;public oilcompany(string typeoforganization, int mustbe, int maxrevenue) : base(typeoforganization, mustbe, maxrevenue) { }public void Plann(){base.GetMaxRevenue();Console.WriteLine($"Выручка по плану: {MaxRevenue} рублей");}public override void PlanExecution(){base.PlanExecution();if (RevenueReceived >= MaxRevenue){Console.WriteLine("Вы выполнили план по выручке, можно не сверять документы");RevenueOk = true;}else{Console.WriteLine("Вы не выполнили план по выручке");Console.WriteLine($"У вас недосдача: {MaxRevenue - RevenueReceived} рублей");RevenueOk = false;}}public override void SumM(){if (RevenueOk == false){base.SumM();Console.WriteLine("Введите количество изготовленного материала: ");received = Convert.ToInt32(Console.ReadLine());}}public void Resultoil(){if (RevenueOk == false){if (received < MustBe){Console.WriteLine("План по количеству застрахованных человек не выполнен");Console.WriteLine("Необходимо запустить рекламу и сделать скидочные купоны");}else if (received == MustBe){Console.WriteLine("План по количеству застрахованных человек выполнен");Console.WriteLine("Будут проверены все денежные переводы.Необходимо найти недосдачу.Будет проверка на предприятии");}else if (received > MustBe){Console.WriteLine("План по количеству застрахованных человек перевыполнен");Console.WriteLine("Будут проверены все денежные переводы. Будет проверка на предприятии");}}}}}factory.csusing System;using System.Collections.Generic;using System.Text;namespace Лаба2{class factory : Organization{int received = 0;public factory(string typeoforganization, int mustbe, int maxrevenue) : base(typeoforganization, mustbe, maxrevenue) { }public void Plann(){base.GetMaxRevenue();Console.WriteLine($"Выручка по плану: {MaxRevenue} рублей");}public override void PlanExecution(){base.PlanExecution();if (RevenueReceived >= MaxRevenue){

Console.WriteLine("Вы выполнили план по выручке, можно не сверять документы");

RevenueOk = true;

}

else

{

Console.WriteLine("Вы не выполнили план по выручке");

Console.WriteLine($"У вас недосдача: {MaxRevenue - RevenueReceived} рублей");

RevenueOk = false;

}

}

public override void SumM()

{

if (RevenueOk == false)

{

base.SumM();

Console.WriteLine("Введите количество изготовленного материала: ");

received = Convert.ToInt32(Console.ReadLine());

}

}
public void Resultfactory()

{

if (RevenueOk == false)

{
if (received < MustBe)

{

Console.WriteLine("План по производству не выполнен");

Console.WriteLine("Будет проведена проверка на предприятии, для выяснения причин недоработки.");

}

else if (received == MustBe)

{

Console.WriteLine("План по производству выполнен");

Console.WriteLine("Будут проверены все денежные переводы. Необходимо найти недосдачу. Будет проверка на предприятии.");

}

else if (received > MustBe)

{

Console.WriteLine("План по производству перевыполнен");

Console.WriteLine("Будут проверены все денежные переводы. Будет проверка на предприятии.");

}

}

}
}

}