Контрольная работа 1, 2, 3, 4: Наследование типа включение делегирование. Классы-коллекции вариант 13
Состав работы
|
|
Необходимые программы
Работа представляет собой файл, который можно открыть в программе:
- Microsoft Word
Описание
Цель: освоение навыков составления и тестирования алгоритмов и объектно-ориентированных программ, использующих абстрактные структуры данных и абстрактные классы по принципу «включение – делегирование».
Задание
Составить программу на языке C# для обработки структурированных данных с помощью классов-коллекций. В программе согласно индивидуальному заданию (табл. 12.2):
определить базовый класс как абстрактный;
ввести в абстрактный класс дополнительные абстрактные методы для изменения значений полей класса;
в производных классах переопределить наследуемый метод для специализированной операции изменения полей класса (операции выбрать самостоятельно).
Создать класс по принципу «включение – делегирование», содержащий коллекцию производных от базового абстрактного класса объектов. Для реализации выбрать один из предложенных в табл. 12.2 производных классов. Описать следующие методы:
добавление в коллекцию новых объектов;
изменение свойств и полей имеющихся объектов по номеру объекта в коллекции;
удаление из коллекции объекта по его номеру;
вывод информации об имеющихся в коллекции объектах.
Продемонстрировать работу класса, построенного по принципу «включение – делегирование». Для этого в методе Main реализовать текстовое меню для выбора одного из возможных действий:
добавить в коллекцию объект (производного класса);
внести изменения в характеристики объекта коллекции;
удалить объект из коллекции;
вывести сведения по имеющимся в коллекции объектам;
выйти из программы.
Разработать модульный тест для проверки работоспособности заданного метода обработки данных, в том числе для контроля исключений. Результаты тестирования сохранить в файле test.log.
Таблица 12.2
Варианты индивидуальных заданий к лабораторной работе 12
Номер варианта
Класс-коллекция
Базовый абстрактный класс
Производные классы (дополнительные
атрибуты)
Метод для тестирования
13
Жилой массив
Здание (число этажей, материал стен, адрес)
Жилое здание (число подъездов, число квартир на этаже), промышленное здание (число и дата заправки огнетушителей)
Добавление
ИСПОЛЬЗОВАНИЕ ИНТЕРФЕЙСОВ И ДЕЛЕГАТОВ
Цель: освоение навыков составления и тестирования алгоритмов и объектно-ориентированных программ, использующих стандартные интерфейсы и делегаты.
Задание
На примере одного из классов-потомков (выбрать самостоятельно из классов, реализованных при выполнении лабораторной работы 12) реализовать интерфейсы ICloneable, IComparable и IComparer. Реализовать поверхностное и глубокое копирование объектов, вывод отсортированного списка объектов класса по произвольному полю.
С помощью делегатов создать метод сортировки заданным методом списка объектов класса-коллекции. Обеспечить возможность проведения сортировки объектов по полям разных типов данных. Делегат должен передавать информацию о функции сравнения двух объектов классаколлекции.
С помощью лямбда-выражений реализовать операции поиска данных по нескольким заданным критериям и вывод найденных записей на консоль.
Протестировать модульными тестами работу делегатов и обработку контролируемых исключений.
ДВУМЕРНАЯ ГРАФИКА В C#. БИНАРНЫЕ ДЕРЕВЬЯ
Цель: освоение навыков составления программ с графическим интерфейсом Windows для работы с бинарными деревьями, применения средств пространства имен System.Drawing и его классов Graphics, Pen и Brush.
Задание
Дана последовательность целых чисел, оканчивающаяся нулем. Написать программную реализацию класса для внесения и хранения данной последовательности в виде дерева двоичного поиска. Если согласно табл. 14.1 заданы 2 дерева, то их следует задавать двумя последовательностями. Реализовать графический интерфейс.
Разработать два метода обработки данных исходного дерева согласно индивидуальному заданию из табл. 14.1. Преобразованное дерево сохранить в файл tree.res. После преобразования проверить, осталось ли дерево деревом двоичного поиска. Результат этой проверки, а также число, возвращенное методом вычисления показателя, выводить посредством элементов управления TextBox.
Операции построения и обработки дерева инициировать посредством элементов управления CommandButton.
Для прорисовки исходного и результатного бинарного дерева использовать элементы управления PictureBox. Использовать классы Graphics, Pen и Brush пространства имен System.Drawing.
Рассчитанные скалярные значения выводить посредством элемента управления TextBox.
Разработать модульный тест для метода преобразования дерева. При проверке читать дерево из файла tree.res.
При программировании задачи выполнять обработку исключительных ситуаций.
Таблица 14.1
Варианты индивидуальных заданий к лабораторной работе 10
Номер варианта
Задание на преобразование дерева
Задание на вычисление показателя
13
Поменять местами элементы с максимальным и минимальным значением
Найти номер уровня бинарного дерева с максимальной суммой элементов
ОБРАБОТКА ГРАФОВ В C#. ДВОЙНАЯ БУФЕРИЗАЦИЯ ГРАФИКИ
Цель: освоение навыков составления программ с графическим интерфейсом Windows для работы с простыми и ориентированными графами, с реализацией дополнительного буфера для обеспечения плавности анимации.
Задание
Написать программную реализацию класса графа с возможностью добавления элементов во множество вершин и во множество ребер. Способ представления ребер зависит от варианта индивидуальной задачи (списки смежности, матрица смежности, список ребер). Реализовать графический интерфейс с двойной буферизацией, в котором элементы графа можно свободно перемещать по области рисования.
Разработать метод класса для обработки данных графа согласно индивидуальному заданию из табл. 15.1. Результат обработки отражать графически и выводить посредством элементов управления TextBox согласно индивидуальному заданию из табл. 15.1.
Операции загрузки, сохранения и обработки графа инициировать посредством элементов управления Button.
Разработать модульный тест для метода обработки графа. При проверке читать граф из файла G.grf.
При программировании задачи выполнять обработку исключительных ситуаций.
Представить результаты выполнения программы и сделать выводы по работе.
Таблица 15.1
Варианты индивидуальных заданий к лабораторной работе 15
Номер варианта
Задание
Вид* графа
Способ представления
Метод обхода
13
Поиск точек сочленения графически отобразить эти вершины красным цветом либо вывести в TextBox, что таких вершин нет
Н
Любой
DFS
Задание
Составить программу на языке C# для обработки структурированных данных с помощью классов-коллекций. В программе согласно индивидуальному заданию (табл. 12.2):
определить базовый класс как абстрактный;
ввести в абстрактный класс дополнительные абстрактные методы для изменения значений полей класса;
в производных классах переопределить наследуемый метод для специализированной операции изменения полей класса (операции выбрать самостоятельно).
Создать класс по принципу «включение – делегирование», содержащий коллекцию производных от базового абстрактного класса объектов. Для реализации выбрать один из предложенных в табл. 12.2 производных классов. Описать следующие методы:
добавление в коллекцию новых объектов;
изменение свойств и полей имеющихся объектов по номеру объекта в коллекции;
удаление из коллекции объекта по его номеру;
вывод информации об имеющихся в коллекции объектах.
Продемонстрировать работу класса, построенного по принципу «включение – делегирование». Для этого в методе Main реализовать текстовое меню для выбора одного из возможных действий:
добавить в коллекцию объект (производного класса);
внести изменения в характеристики объекта коллекции;
удалить объект из коллекции;
вывести сведения по имеющимся в коллекции объектам;
выйти из программы.
Разработать модульный тест для проверки работоспособности заданного метода обработки данных, в том числе для контроля исключений. Результаты тестирования сохранить в файле test.log.
Таблица 12.2
Варианты индивидуальных заданий к лабораторной работе 12
Номер варианта
Класс-коллекция
Базовый абстрактный класс
Производные классы (дополнительные
атрибуты)
Метод для тестирования
13
Жилой массив
Здание (число этажей, материал стен, адрес)
Жилое здание (число подъездов, число квартир на этаже), промышленное здание (число и дата заправки огнетушителей)
Добавление
ИСПОЛЬЗОВАНИЕ ИНТЕРФЕЙСОВ И ДЕЛЕГАТОВ
Цель: освоение навыков составления и тестирования алгоритмов и объектно-ориентированных программ, использующих стандартные интерфейсы и делегаты.
Задание
На примере одного из классов-потомков (выбрать самостоятельно из классов, реализованных при выполнении лабораторной работы 12) реализовать интерфейсы ICloneable, IComparable и IComparer. Реализовать поверхностное и глубокое копирование объектов, вывод отсортированного списка объектов класса по произвольному полю.
С помощью делегатов создать метод сортировки заданным методом списка объектов класса-коллекции. Обеспечить возможность проведения сортировки объектов по полям разных типов данных. Делегат должен передавать информацию о функции сравнения двух объектов классаколлекции.
С помощью лямбда-выражений реализовать операции поиска данных по нескольким заданным критериям и вывод найденных записей на консоль.
Протестировать модульными тестами работу делегатов и обработку контролируемых исключений.
ДВУМЕРНАЯ ГРАФИКА В C#. БИНАРНЫЕ ДЕРЕВЬЯ
Цель: освоение навыков составления программ с графическим интерфейсом Windows для работы с бинарными деревьями, применения средств пространства имен System.Drawing и его классов Graphics, Pen и Brush.
Задание
Дана последовательность целых чисел, оканчивающаяся нулем. Написать программную реализацию класса для внесения и хранения данной последовательности в виде дерева двоичного поиска. Если согласно табл. 14.1 заданы 2 дерева, то их следует задавать двумя последовательностями. Реализовать графический интерфейс.
Разработать два метода обработки данных исходного дерева согласно индивидуальному заданию из табл. 14.1. Преобразованное дерево сохранить в файл tree.res. После преобразования проверить, осталось ли дерево деревом двоичного поиска. Результат этой проверки, а также число, возвращенное методом вычисления показателя, выводить посредством элементов управления TextBox.
Операции построения и обработки дерева инициировать посредством элементов управления CommandButton.
Для прорисовки исходного и результатного бинарного дерева использовать элементы управления PictureBox. Использовать классы Graphics, Pen и Brush пространства имен System.Drawing.
Рассчитанные скалярные значения выводить посредством элемента управления TextBox.
Разработать модульный тест для метода преобразования дерева. При проверке читать дерево из файла tree.res.
При программировании задачи выполнять обработку исключительных ситуаций.
Таблица 14.1
Варианты индивидуальных заданий к лабораторной работе 10
Номер варианта
Задание на преобразование дерева
Задание на вычисление показателя
13
Поменять местами элементы с максимальным и минимальным значением
Найти номер уровня бинарного дерева с максимальной суммой элементов
ОБРАБОТКА ГРАФОВ В C#. ДВОЙНАЯ БУФЕРИЗАЦИЯ ГРАФИКИ
Цель: освоение навыков составления программ с графическим интерфейсом Windows для работы с простыми и ориентированными графами, с реализацией дополнительного буфера для обеспечения плавности анимации.
Задание
Написать программную реализацию класса графа с возможностью добавления элементов во множество вершин и во множество ребер. Способ представления ребер зависит от варианта индивидуальной задачи (списки смежности, матрица смежности, список ребер). Реализовать графический интерфейс с двойной буферизацией, в котором элементы графа можно свободно перемещать по области рисования.
Разработать метод класса для обработки данных графа согласно индивидуальному заданию из табл. 15.1. Результат обработки отражать графически и выводить посредством элементов управления TextBox согласно индивидуальному заданию из табл. 15.1.
Операции загрузки, сохранения и обработки графа инициировать посредством элементов управления Button.
Разработать модульный тест для метода обработки графа. При проверке читать граф из файла G.grf.
При программировании задачи выполнять обработку исключительных ситуаций.
Представить результаты выполнения программы и сделать выводы по работе.
Таблица 15.1
Варианты индивидуальных заданий к лабораторной работе 15
Номер варианта
Задание
Вид* графа
Способ представления
Метод обхода
13
Поиск точек сочленения графически отобразить эти вершины красным цветом либо вывести в TextBox, что таких вершин нет
Н
Любой
DFS
Похожие материалы
Замкнутые классы ФАЛ. (Классы Поста).
Максим102
: 15 июля 2014
Задание 2.1
2.1.1. Доопределить функции f(x,y,z), g(x,y,z), h(x,y,z) так, чтобы .
Если построение какой-либо функции невозможно, докажите это.
Выясните вопрос о принадлежности построенных функций к классам и .
f(x,y,z)=( 0 - - 0 1 - - - )
g(x,y,z)=( - - 0 0 1 - 0 - )
h(x,y,z)=( - - 1 0 - - 0 0 )
Задание 2.2.
2.2.1. Можно ли из функции f(x,y,z) с помощью суперпозиций получить g(x,y,z)?
f=1000 0000 g=1100 0011
Задание 2.3.
2.3.1. Для функций f(x,y,z) и g(x,y,z) выя
400 руб.
Одноклеточные паразиты: класс саркодовые и класс жгутиковые
GnobYTEL
: 6 февраля 2013
Медицинская паразитология как самостоятельная дисциплина включает разделы зоологии, которые изучают паразитических представителей: протистология, или протозоология, изучает паразитических простейших, гельминтология - червей-паразитов, арахноэнтомология - паразитических представителей классов Паукообразные и Насекомые.
МЕДИЦИНСКАЯ ПРОТИСТОЛОГИЯ
Медицинская протистология изучает морфологию, биологию и экологию простейших - возбудителей заболеваний человека и животных, а также вопросы клиники, па
Классы Object Pascal, стандартный класс Tlist.
Dusya
: 13 июня 2012
Лабораторная работа
По дисциплине: «Современные технологии программирования»
Цель: Сформировать практические навыки: реализации абстрактных типов данных с помощью классов Object Pascal.
Задание:
1. Реализовать тип «полином», в соответствии с приведенной ниже спецификацией.
2. Оттестировать каждую операцию, определенную на типе данных одним из методов тестирования.
3. Оттестировать тип данных в целом.
Спецификация абстрактного типа данных Полином.
ADT TPoly
Данные
Полиномы Tpoly - это неизмен
250 руб.
Социальные классы
Qiwir
: 29 августа 2013
Границы социальных групп могут охватывать различные по размеру социальные общности. Мы очень четко определяем границы малых или больших групп, оформленных в организации. Каждый из нас знает о своем членстве в производственном коллективе, в партии или в спортивном обществе. Как мы видим, в этих случаях важно, чтобы групп была либо малого размера, т.е. в пределах охвата межличностных отношений, либо имела достаточно четкие формальные границы, которые контролируются определенными конституционными о
5 руб.
Класс Лифт
OstVER
: 17 сентября 2012
Иерархия классов Лифт
Не менее трех конструкторов в каждом классе
Перегрузка операций: присваивание, инкремент, декремент (в обеих формах), поместить в поток, взять из потока, бинарный плюс, унарный минус
Классы С++, библиотека STL, библиотечный класс Tlist C++ Builder.
VVA77
: 11 апреля 2017
Цель: Сформировать практические навыки реализации абстрактных типов данных с помощью классов.
Задание:
1. Реализовать тип «полином», в соответствии с приведенной ниже спецификацией.
2. Протестировать каждую операцию, определенную на типе данных.
Контрольные вопросы:
1. Чем определяется размер памяти, выделяемой под экземпляр класса?
2. Что такое RTTI класса?
3. Как и когда происходит связывание объекта с RTTI класса?
4. Как описываются и переопределяются виртуальные и динамические методы?
5. Чт
70 руб.
-школа на 22 класса
nakonechnyy_lelya@mail.ru
: 29 апреля 2020
Варианты фасадов-ШКОЛА НА 22 КЛАССА-ВАРИАНТ ГЛАВНОГО ФАСАДА-ВАРИАНТ ФАСАДА С ЧЕРДАЧНОЙ КРОВЛЕЙ-Микрорайон 3 в г. Шахунья -Детали машин-Деталировка-Сборочный чертеж-Чертежи-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Графическая часть-Оборудование-Машины и механизмы-Агрегаты-Установки-Комплексы-Узлы-Детали-Курсовая работа-Дипломная работа-Автомобили-Транспорт-Строительная техника-Электрооборудование-Грузоподъёмные механизмы
299 руб.
Теория социальных классов
Elfa254
: 3 февраля 2014
Содержание
Введение
1. Материалистическая диалектика и классовый подход
2. Понятие и сущность социальных классов
3. Теории классов
4. Классовая борьба и господствующие идеи данного времени
Заключение
Список использованной литературы
Приложение
Введение
С момента разложения первобытно-общинного строя и возникновения частной собственности, человеческое общество разделено на классы. Но сказать это, значило бы просто воспроизвести реальное состояние, с которым согласятся все. Разделение на классы
15 руб.
Другие работы
Лабораторная работа №1 по дисциплине: Основы теории цепей. Вариант 8
Учеба "Под ключ"
: 10 декабря 2022
Лабораторная работа № 1
Законы Ома и Кирхгофа в резистивных цепях
1. Цель работы:
Изучение и экспериментальная проверка законов Ома и Кирхгофа в разветвленной электрической цепи, содержащей источник и резистивные элементы.
2. Подготовка к выполнению работы:
При подготовке к работе необходимо изучить: законы Ома для пассивного участка цепи, участка цепи с активными (источники) и пассивными (нагрузки) элементами; первый закон Кирхгофа – для узла цепи; второй закон Кирхгофа – для замкнутого конту
400 руб.
Поршень бурового насоса-Чертеж-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа-текст на украинском языке
leha.se92@mail.ru
: 3 февраля 2017
Поршень бурового насоса-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа-текст на украинском языке
135 руб.
Курсовая работа по дисциплине: Объектно-ориентированное программирование. Вариант №06
IT-STUDHELP
: 8 июля 2023
Курсовая работа
Вариант №06
Задание
Курсовая работа состоит из одного задания. Вид графического объекта, движение которого надо будет реализовать в работе, выбирается согласно своему варианту (см. далее таблицу вариантов).
Задание: есть 2 варианта задания, можете выбрать любой из них
Вариант 1.
Написать программу, используя объектно-ориентированный подход, которая двигает по экрану изображение заданного графического объекта.
Допускается: замена некоторых элементов графического объекта, из
250 руб.
Онлайн Тест по дисциплине: Физика (часть 2).
IT-STUDHELP
: 10 ноября 2022
Вопрос No1
Складываются два гармонических колебания одного направления с одинаковыми периодами. Результирующее колебание имеет максимальную амплитуду при разности фаз, равной:
π/4
π/3
π/2
π
0
Вопрос No2
Катод вакуумного фотоэлемента освещается светом с энергией квантов 10 эВ. Если фототок прекращается при подаче на фотоэлемент задерживающего напряжения 4 В, то работа выхода электронов из катода равна:
√6 эВ
4 эВ
5 эВ
6 эВ
12 эВ
Вопрос No3
Два гармонических осциллятора, колеблющихся с
480 руб.