Главная страница

Интерфейсы в с#. лаб 1 ИСАС. Отчет по лабораторной работе 1 по дисциплине Интеграция с автоматизированными системами Тема Разработка интерфейса C# Вариант 17 Выполнил студент группы 220692 Стрельников Евгений Олегович


Скачать 50.71 Kb.
НазваниеОтчет по лабораторной работе 1 по дисциплине Интеграция с автоматизированными системами Тема Разработка интерфейса C# Вариант 17 Выполнил студент группы 220692 Стрельников Евгений Олегович
АнкорИнтерфейсы в с
Дата25.10.2022
Размер50.71 Kb.
Формат файлаdocx
Имя файлалаб 1 ИСАС.docx
ТипОтчет
#753335

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего образования «Тульский государственный университет»

Институт прикладной математики и компьютерных наук

Кафедра вычислительной техники

Отчет по лабораторной работе № 1 по дисциплине

«Интеграция с автоматизированными системами»

Тема «Разработка интерфейса C#»

Вариант 17

Выполнил студент группы 220692

Стрельников Евгений Олегович

Проверил ассистент каф. ВТ

Крюков Олег Сергеевич

Тула 2022

Цель работы:

Цель работы – освоить навыки разработки и применения интерфейсов в C#.

Для достижения поставленной цели необходимо выполнить следующие задачи:

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

- Освоить принципы реализации интерфейсов C#.

- Исследовать предметную область, для которой разрабатывается интерфейс.

- Разработать интерфейс и продемонстрировать его реализацию.

Задание на работу:

Разработать и реализовать интерфейс для заданной предметной области. Интерфейс должен иметь не менее двух реализаций с отличиями не менее чем в трех методах.

- Новогодняя ёлка.

Ход работы:

1) Ознакомится теоретической справкой.

2) Разработать расчетный интерфейс C#.

3) Разработать несколько реализаций интерфейса.

4) Оформить отчет.

5) Защитить работу преподавателю.

Разработаем предметную область новогодней ёлки.

У новогодней ёлки есть высота, название ёлки, гирлянда, игрушки, шарики. Эти атрибуты имеются в ёлке.

Описание интерфейса.

Все переменные, кроме названия ёлки имеют тип числовой. Высота и гирлянда исчисляются в длине, а игрушки, шарики в количестве. Имеется 5 методов по умолчанию, которые помогают нам вывести информацию о ёлке вместе с поздравлением на консоль.

Программа реализованного интерфейса имеется в приложении 1.
На рисунке 1 представлена демонстрация методов Move, Move1, Move2, Move3, Move4, как они выводят данные атрибуты ёлки.



Рисунок 1 -вывод атрибутов ёлки вместе с текстом из интерфейса

Далее изменим реализацию интерфейса. Для этого добавим 3 метода по умолчанию. Нам необходимо, чтобы можно было понять, какая понадобится максимальная длина гирлянды, максимальное число игрушек и максимальное количество шариков. То есть мы пытаемся рассчитать, какая нужна длина гирлянды, число игрушек и шариков. Тут ничего не нужно вводить, система сама решит, сколько нужно гирлянды, игрушек, шариков, введя формулы. Для гирлянды должна быть длина, равная 1,5 длины ёлки, для игрушек число равное 2 длинам ёлки, и тоже самое для шариков.

Программа изменённого интерфейса имеется в приложении 2.

На рисунке 2 представлена демонстрация изменённого интерфейса с методами Move5, Move6, Move7, как они выводят максимальную длину гирлянды, игрушек и шариков, которые можно повесить на ёлку.



Рисунок 2 -вывод атрибутов ёлки вместе с текстом из интерфейса с изменёнными методами

Вывод: принципы разработки и реализации интерфейса изучены и применены на практике. Предметная область новогодней ёлки изучена и реализована в двух реализациях. Были разработаны методы, выводящие описание ёлки вместе с её атрибутами.

Приложения

Приложение 1

Листинг программы New_Year_1:

using System;

namespace New_Year_1

{

interface New_Year_Tree

{

int Height { get; } // высота ёлки

int Garland { get;} // длина гирлянды

int Toys { get; } // количество игрушек

int Balloons { get;} // количество шариков

string Name { get; } // название ёлки

void Move();

void Move1();

void Move2();

void Move3();

void Move4();
}

class New_Year : New_Year_Tree

{

// вывод поздравления и имени ёлки

public void Move()

{

Console.WriteLine("С новым годом! Имя ёлки: {0}",Name);

}

// вывод высоты ёлки

public void Move1()

{

Console.WriteLine("Высота ёлки = {0} м", Height);

}

// вывод длины гирлянды

public void Move2()

{

Console.WriteLine("Длина гирлянды = {0} м", Garland);

}

// вывод количества игрушек

public void Move3()

{

Console.WriteLine("Количество игрушек = {0} шт", Toys);

}

// вывод количества шариков

public void Move4()

{

Console.WriteLine("Количество шариков = {0} шт", Balloons);

}

public string Name { get; set; }

public int Height { get; set; }

public int Garland { get; set; }

public int Toys { get; set; }

public int Balloons { get; set; }
public New_Year(string name, int height, int garland, int toys, int ballons)

{

Name = name;

Height = height;

Garland = garland;

Toys = toys;

Balloons = ballons;

}

}
class Program

{

static void Main(string[] args)

{

New_Year client = new New_Year("Гостья новогодняя",600, 800, 500, 300);

client.Move();

client.Move1();

client.Move2();

client.Move3();

client.Move4();

}

}

}

Приложение 2

Листинг программы New_Year_2:

using System;

namespace New_Year_2

{

interface New_Year_Tree

{

int Height { get; } // высота ёлки

int Garland { get;} // длина гирлянды

int Toys { get; } // количество игрушек

int Balloons { get;} // количество шариков

string Name { get; } // название ёлки

void Move();

void Move1();

void Move2();

void Move3();

void Move4();

void Move5();

void Move6();

void Move7();
}

class New_Year : New_Year_Tree

{

public void Move()

{

Console.WriteLine("С новым годом! Имя ёлки: {0}",Name);

}

public void Move1()

{

Console.WriteLine("Высота ёлки = {0} м", Height);

}

public void Move2()

{

Console.WriteLine("Длина гирлянды = {0} м", Garland);

}

public void Move3()

{

Console.WriteLine("Количество игрушек = {0} шт", Toys);

}

public void Move4()

{

Console.WriteLine("Количество шариков = {0} шт", Balloons);

}

public void Move5()

{

Console.WriteLine("Максимальная длина гирлянды которую можно повесить на ёлку = {0} м", 1.5 * Height);

}

public void Move6()

{

Console.WriteLine("Максимальное количество игрушек которое можно повесить на ёлку = {0} шт", 2 * Height);

}

public void Move7()

{

Console.WriteLine("Максимальное количество шариков которое можно повесить на ёлку = {0} шт", 2 * Height);

}

public string Name { get; set; }

public int Height { get; set; }

public int Garland { get; set; }

public int Toys { get; set; }

public int Balloons { get; set; }
public New_Year(string name, int height, int garland, int toys, int ballons)

{

Name = name;

Height = height;

Garland = garland;

Toys = toys;

Balloons = ballons;
}

}
class Program

{

static void Main(string[] args)

{

New_Year client = new New_Year("Гостья новогодняя",600, 800, 500, 300);

client.Move();

client.Move1();

client.Move2();

client.Move3();

client.Move4();

client.Move5();

client.Move6();

client.Move7();

}

}

}


написать администратору сайта