Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 6.docx
Скачиваний:
5
Добавлен:
30.04.2022
Размер:
42.44 Кб
Скачать

5 Защита курсовой работы

Во время защиты курсовой работы студенты должны быть готовы продемонстрировать работоспособность разработанного ими программно­го продукта и ответить на вопросы преподавателя.

Студент, выполняющий курсовую работу, обязан посещать все консультации согласно расписанию, независимо от объема проделанной работы. В контрольные сроки, указанные в задании, студент обязан представить руководителю или ведущему преподавателю весь материал по проделанной работе.

В срок, указанный как срок сдачи оформленной работы, студент обязан сдать окончательный вариант работы в отпечатанном виде с приложением диска, содержащего текст курсовой работы и программный продукт. Дата защиты курсовой работы определяется кафедрой, как и состав комиссии, которая принимает защиту. Обычно комиссия состоит не менее чем из двух человек (ведущий преподаватель, зав.кафедрой, руководители работ).

Защита проводится в аудитории с возможностью демонстрации иллюстрирующего работу материала (плакаты, раздаточный материал и т. п.). Студент выступает перед комиссией, и по результатам его доклада и на основе мнения ведущего преподавателя и руководителя выставляется оценка. Для доклада студенту предоставляется до десяти минут, а затем задаются вопросы по сути работы.

При подготовке студентом доклада основное внимание необходимо обратить на последовательность изложения:

1. Тема курсовой работы.

2. Постановка задачи.

3. Краткий анализ состояния проблемы. Обоснование и принятие решения по выбору методов и средств решения проблемы.

4. Изложение основных результатов работы.

5. Анализ и выводы по итогам работы.

Студенту, получившему по защите неудовлетворительную оценку, по решению комиссии выдается дополнительное или новое задание, объем которого определяется комиссией совместно с руководителем. Определяется срок выполнения этого задания и назначается новый срок защиты доработанной или новой курсовой работы.

6 Оценка курсовой работы

Курсовая работа оценивается руководителем курсового проектирования по четырехбалльной системе (отлично, хорошо, удовлетворительно, неудовлетворительно) по каждому из следующих параметров:

  • оценка результатов работы;

  • оценка оформления и срока представления работы;

  • оценка защиты результатов работы.

Окончательная оценка работы определяется как среднее арифметическое всех оценок с округлением до ближайшего целого.

7 Тематика курсовых работ

Задания курсовых работ по дисциплине «Языки программирования» (4-й семестр) для студентов специальности 090303 «Информационная безопасность автоматизированных систем» по теме «Реализация программы на языке C++ c использованием стандартной библиотеки шаблонов».

Следующие задания реализовать в виде класса, используя для хранения информации контейнер стандартной библиотеки шаблонов (STL) языка C++. Реализовать методы добавления в конец контейнера, удаления и замены элементов контейнера. Элементы контейнеров реализовать объекты отдельного класса. Реализовать ввод-вывод элементов с помощью стандартных потоков ввода-вывода. С помощью алгоритмов поиска стандартной библиотеки шаблонов (STL) организовать поиск по контейнеру по заданному критерию.

Задания:

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

  2. Запись о товаре на складе представляет собой структуру с полями: номер склада, код товара, наименование товара, дата поступления на склад, срок хранения в днях, количество единиц товара, цена за единицу товара. Поиск организовать по номеру склада, коду товара, дате поступления и сроку хранения.

  3. Информационная запись о книге содержит поля: имя папки, имя файла, расширение, дата и время создания, атрибуты («только чтение», «скрытый», «системный»), признак удаления, количество выделенных секторов для хранения. Поиск выполнять по имени папки, имени файла, дате создания.

  4. Разовый платеж за телефонный разговор является структурой с полями: фамилия плательщика, номер телефона, дата разговора, тариф на минуту разговора, время начала разговора, время окончания разговора. Поиск организовать по фамилии, дате, номеру телефона.

  5. Компьютер характеризуется кодом, производителем, типом процессора, частотой его работы, объемом ОЗУ, объемом жесткого диска, объемом памяти видеокарты, стоимостью компьютера и количеством экземпляров в наличии. Поиск осуществлять по типу процессора, объему ОЗУ, объему жесткого диска.

  6. Сотрудник представлен номером отдела, фамилией, именем, полом, окладом, датой поступления на работу, процентом надбавки. Поиск организовать по номеру отдела, фамилии, дате поступления на работу.

  7. Запись о багаже пассажира авиарейса содержит следующие поля: номер рейса, дата вылета, пункт назначения, фамилия пассажира, суммарный вес багажа. Поиск выполнять по номеру рейса, дате вылета, пункту назначения, а также пассажиров, чей суммарный вес багажа превышает максимально допустимый.

  8. Запись о медикаменте содержит следующие поля: номер аптеки, название лекарства, количество упаковок в наличии, цена упаковки, дату поступления и срок хранения. Поиск производить по номеру аптеки, названию лекарства, дате поступления.

  9. Один элемент – автомобиль – представляет собой в базе данных структуру с полями: фамилия владельца, марка автомобиля, мощность двигателя, объем двигателя. Поиск производить по фамилии владельца, марке автомобиля, мощности двигателя.

  10. Запись в журнале экзаменационной сессии имеет следующие поля: курс, номер группы, фамилия студента, номер зачетной книжки, дисциплина, оценка, полученная на экзамене по данной дисциплине. Поиск осуществлять по курсу, номеру группы, фамилии студента и дисциплине.

  11. Структура одной записи оплаты за коммунальные услуги содержит поля: номер дома, номер квартиры, фамилия владельца, вид платежа, дата платежа, сумма платежа, процент пени, на сколько дней просрочен платеж. Поиск производить по номеру дома, квартире, фамилии владельца, а также просроченных платежей.

  12. Запись счета за ремонтные работы содержит поля: название фирмы, вид работы, стоимость проведения работ, дата исполнения. Поиск производить по названию фирмы виду работ и дате исполнения.

  13. Учетная запись журнала стоянки автомобилей имеет структуру: номер автомобиля, фамилия владельца, дата и время начала стоянки, дата и время окончания стоянки, установленный тариф. Поиск производить по номеру автомобиля, по дате стоянки, фамилии владельца.

  14. Запись о проданном туре в туристической фирме содержит следующие поля: наименование тура, фамилия клиента, стоимость одного дня поездки, количество дней, дата отправления. Поиск производить по наименованию тура, фамилии клиента, дате отправления.

Задания курсовых работ по дисциплине «Языки программирования» (4-й семестр) для студентов специальности 090301 «Компьютерная безопасность» по теме «Реализация программы на языке C++».

  1. Создать программу, реализующую класс «строка» без использования стандартной библиотеки C++. Предусмотреть возможность начальной инициализацией массивом символов произвольного размера, сложение строк (с использованием перегрузки операторов языка), определение длины, выделение подстроки, поиск подстроки в строке.

  2. Создать программу, реализующую класс «матрица». Используя перегрузку операторов предусмотреть сложение, умножение матриц, умножение матриц на число. В реализацию класса включить метод, реализующий транспонирование матрицы.

  3. Создать программу, реализующую класс «динамический массив элементов произвольного типа» без использования стандартной библиотеки C++. Предусмотреть возможность добавления, удаления элементов в любую часть массива.

  4. Создать программу, реализующую класс «база данных», хранящую информацию о сотрудниках предприятия в файле (поля: уникальный номер, ФИО, должность, возраст). Предусмотреть возможность добавления, удаления, поиска записей по номеру. При работе с записями использовать объекты класса «сотрудник». Для доступа к данным предусмотреть в классе «база данных» авторизацию пользователей (с помощью логина и пароля). Предусмотреть добавление, удаление учетных записей пользователей.

  5. Определить класс «множество целых чисел». Используя перегрузку операторов предусмотреть операции объединения, пересечения, симметричной разности множеств. Предусмотреть возможность инициализации объектов из целочисленного массива, а также добавление элементов по одному.

  6. Реализовать класс «дата», содержащий информацию о годе, месяце, числе, часе, минуте, секунде. Предусмотреть возможность определять интервал между датами, переопределив оператор разности, возможность модификации значений свойств, начальную инициализацию из строки вида «ЧЧ:MM:СС ДД.ММ.ГГГГ», возможность вывода даты в текстовом виде.

  7. Разработать класс, хранящий и выводящий на экран таблицу объектов произвольного размера. Объектами могут быть строки, целые числа, логические переменные, числа с плавающей точкой. Для хранения и вывода объектов создать абстрактный базовый класс объекта с виртуальным методом вывода его на экран и наследовать от него классы для каждого вида объектов.

  8. Создать абстрактный базовый класс многоугольника заданного координатами своих вершин и наследовать от него классы треугольника, прямоугольного треугольника, прямоугольника, квадрата, параллелограмма. В абстрактном базовом классе многоугольник определить виртуальные методы определения площади и периметра фигур. Создать класс, который будет возвращаться с помощью механизма исключений, и информировать о неправильном вводе данных (координат вершин) в объект.

  9. Создать класс, хранящий произвольное множество пар «ключ-значение». Значение является объектом абстрактного класса, ключ является целым числом. От абстрактного класса значения наследовать классы для хранения символа, целого числа, строки с возможностью вывода на экран. Предусмотреть возможность добавления и удаления пары «ключ-значение», поиска значения по ключу.

  10. Реализовать класс, описывающий целочисленное число произвольного размера (размер в байтах задается при инициализации). Предусмотреть сложение, вычитание чисел, вывод числа на экран.

  11. Создать класс, описывающий вектор произвольного размера. Определить основные операции с векторами (сложение, умножение на число, проверку на нахождении на одной прямой, коллинеарность). Включить в класс метод вывода координат вектора на экран в стандартном виде.

  12. Создать класс для работы с многочленами до 50-й степени. Коэффициенты должны быть представлены массивом максимум из 50 элементов. Размер этого массива задается как аргумент конструктора при инициализации. В классе реализовать арифметические операции с многочленами, вычисление значения многочлена для заданного x, интегрирование и дифференцирование.

  13. Создать класс для работы с дробными десятичными числами. Число должно быть представлено в виде двух целочисленных массивов. Размер массивов должен определяться при инициализации дробного числа. Создать операции сравнения, сложения, вычитания и умножения дробных чисел.

  14. Создать класс работы с денежными единицами. Предусмотреть операции сложения, вычитания, умножения денежных единиц на число. Класс должен иметь статические данные об относительных курсах валют и производить арифметические операции с различными валютами. Предусмотреть возможность сравнения денежных единиц в различных валютах и сортировки объектов этого типа.

  15. Разработать абстрактный класс массива, с методами сортировки и поэлементной обработки элементов, а также операцией сложения объектов. Создать две реализации данного класса, в первой из которых сложение будет производиться как пересечение множеств, а во второй как объединение множеств, а поэлементная обработка будет заключаться соответственно в вычислении логарифма и квадратного корня для чисел в массиве.

  16. Разработать класс «список» для хранения переменного количества элементов произвольного типа. Создать методы для добавления, удаления и поиска элемента по индексу (реализовать переопределением операции получения элемента по индексу). Для хранения данных использовать двусвязный список.

  17. Создать класс для работы с многочленами до 50-й степени. Коэффициенты должны быть представлены массивом максимум из 50 элементов. Размер этого массива задается как аргумент конструктора при инициализации. В классе реализовать арифметические операции с многочленами, вычисление значения многочлена для заданного x, интегрирование и дифференцирование.

  18. Создать класс для работы с дробными десятичными числами. Число должно быть представлено в виде двух целочисленных массивов. Размер массивов должен определяться при инициализации дробного числа. Создать операции сравнения, сложения, вычитания и умножения дробных чисел.

  19. Создать класс работы с денежными единицами. Предусмотреть операции сложения, вычитания, умножения денежных единиц на число. Класс должен иметь статические данные об относительных курсах валют и производить арифметические операции с различными валютами. Предусмотреть возможность сравнения денежных единиц в различных валютах и сортировки объектов этого типа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]