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

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

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

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

Добавлен: 06.12.2023

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

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

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РФ
ФГАОУ ВО «СЕВЕРО-КАВКАЗСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
ИНСТИТУТ ЦИФРОВОГО РАЗВИТИЯ ИМЕНИ ПРОФЕССОРА Н.И. ЧЕРВЯКОВА


КАФЕДРА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ АВТОМАТИЗИРОВАННЫХ СИСТЕМ

Отчёт по лабораторной работе №2




Объекты и классы (конструкторы, деструкторы)

По дисциплине

«Объектно-ориентированное программирование»

Выполнил:

Гочияев Рустам Рашидович
студент 3 курса группы ИБС-с-о-20-1
специальности 10.05.03
«Информационная безопасность
автоматизированных систем»
очной формы обучения




Проверил:

Соломонов Дмитрий Владимирович



Ставрополь, 2022

Лабораторная работа 2

Объекты и классы (конструкторы, деструкторы).

Вариант 5

Цель: познакомиться с основой объектного подхода в языке C#, созданием объектов, классов и механизмом наследования.

Задание. Организация, страховая компания, нефтяная компания, завод.

Код программы прикреплён в приложении А.

Пример работы программы:



Рисунок 1 – Страховая компания


Рисунок 2 – Нефтяная компания


Рисунок 3 – Завод

Вывод: мы познакомились с основой объектного подхода в языке C#, созданием объектов, классов и механизмом наследования.

Приложение А.

Program.cs

using 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.cs

using 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.cs

using 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.cs

using 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.cs

using 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("Будут проверены все денежные переводы. Будет проверка на предприятии.");

}

}

}
}

}