ИНДИВИДУАЛЬНО-ПРАКТИЧЕСКАЯ РАБОТА №1, №2. Вариант 2 для обоих заданий
Практическая работа
в среде программирования Visual C++ .NET 2019
Среда программирования: Visual C++ .NET 2019
Название работы: ИНДИВИДУАЛЬНО-ПРАКТИЧЕСКАЯ РАБОТА №1, №2. Вариант 2 для обоих заданий
Вид работы: Практическая работа
Описание: ИНДИВИДУАЛЬНО-ПРАКТИЧЕСКАЯ РАБОТА №1
Тема работы: классы и объекты, методы и механизмы инкапсуляции и организации доступа к элементам объекта, структурные элементы класса и методы взаимодействия объектов, механизмы наследования и определения собственных типов данных, полиморфизм, его основные проявления, механизмы использования, конструкторы, деструкторы, файлы.
Порядок выполнения работы
1. Изучить краткие теоретические сведения.
2. Ознакомиться с материалами литературных источников.
3. Ответить на контрольные вопросы.
4. Разработать алгоритм программы.
5. Написать, отладить и выполнить программу.
Варианты заданий
Задание состоит из 2 частей.
I часть
Вариант 2. Строка. Реализовать класс, добавить поля, в том числе с типом char* в приватную секцию, добавить геттеры и сеттеры для этих полей в публичную секцию, реализовать конструкторы инициализации и копирования, деструкторы. Продемонстрировать следующий функционал: создание и удаление массива экземпляров класса; использование класса; поиск или сортировку в массиве использование конструктора копирования, конструктора инициализации; перегруженного метода.
II часть
Сделать правильно множественное наследование по типу ромб с использованием какого-нибудь класса из второй части контрольной работы (остальные классы-участники множественного наследования придумать). Во всех классах должны быть конструкторы инициализации и поля.
Продемонстрировать, добавив вывод сообщений в конструкторах и де-структорах созданных классов, в каком порядке вызываются конструкторы и деструкторы у созданных классов.
Продемонстрировать использование трех абстрактных и трех виртуальных функций.
Продемонстрировать перегрузку трех разных операторов (например, перегрузить вывод в поток экземпляра какого-нибудь класса), трех методов. Продемонстрировать использование трех дружественных функций.
Работа с массивами. Создать массив указателей на базовый класс. Создать экземпляры классов-наследников. Проверить у них работу виртуальных функций.
ИНДИВИДУАЛЬНО-ПРАКТИЧЕСКАЯ РАБОТА №2
1. Принцип полиморфизма, виртуальные функции, абстрактные классы.
2. Шаблоны классов.
Часть 1
Тема работы: Принцип полиморфизма, виртуальные функции, абстрактные классы.
Цель работы: изучить реализацию принципа полиморфизма через использование виртуальных функций при наследовании.
Контрольные вопросы
1. Какая функция называется виртуальной?
2. Чем виртуальные функции отличаются от перегружаемых?
3. Какой класс называется абстрактным?
4. В чем состоит различие раннего и позднего связывания?
5. Опишите назначение виртуального деструктора.
Порядок выполнения работы
1. Изучить краткие теоретические сведения.
2. Ознакомиться с материалами литературных источников.
3. Ответить на контрольные вопросы.
4. Разработать алгоритм программы.
5. Написать, отладить и выполнить программу.
Варианты заданий
Вариант 2. Разработать программу, для обработки информации о строительных материалах: поступление, учет и отгрузка. Для этого требуется разработать классы. Базовый класс должен быть абстрактным. Первый производный класс определяет количество стройматериалов каждого типа, например 50 перекрытий. Другой класс хранит данные о каждом виде стройматериалов, например площадь и стоимость за квадратный метр. Далее следует класс, хранящий описание каждого вида стройматериалов, которое включает название и сорт материала.
Контрольные вопросы
1. Для чего используются шаблоны классов? Что у них общего с шаблонами функций?
2. Как описываются шаблоны классов?
3. Как создать объект на основе класса, порожденного шаблоном?
4. Каких типов могут быть фактические параметры шаблонов классов?
5. Можно ли описывать в списке параметров шаблона параметры, не определяющие тип?
Порядок выполнения работы
1. Изучить краткие теоретические сведения.
2. Ознакомиться с материалами литературных источников.
3. Ответить на контрольные вопросы.
4. Разработать алгоритм программы.
5. Написать, отладить и выполнить программу.
Варианты заданий
Вариант 2. Реализовать шаблон класса Tree, реализующий бинарное дерево. Для представления узлов дерева использовать шаблон класса TreeNode. Определить функции добавления узла, обхода всего дерева в нисходящем и в восходящем порядке, поиска по дереву. На основе созданного класса написать программу вычисления арифметических выражений.
Для каждого варианта (табл. 2) разработать шаблон соответствующего класса, где поля могут иметь различные типы данных (некоторые поля могут быть статическими). Предусмотреть наличие в классе указанных методов и перегруженных операций.
Таблица 2
2 Элемент односвязного списка Указатель на начало, информационное поле элемента, ссылка на следующий элемент Добавить элемент в начало, удалить из начала, найти элемент << (распечатать весь список), == (равны ли размеры двух списков?)
Год: 2022
Данный заказ (практическая работа) выполнялся нашим сайтом в 2022-м году, в рамках этого заказа была разработана программа в среде программирования Visual C++ .NET 2019. Если у Вас похожее задание на программу, которую нужно написать на Visual C++ .NET 2019, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2022-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".
Viber: ![]() Telegram: ![]() ВКонтакте: ![]() ![]() E-mail: ![]() Skype: ![]() |