Файл: Методические указания по проведению этапов работы требования по оформлению курсовой работы.pdf

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

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

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

Добавлен: 24.10.2023

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

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

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

Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Пермский национальный исследовательский
политехнический университет»
Лысьвенский филиал
Кафедра Естественнонаучных дисциплин
УЧЕБНО-МЕТОДИЧЕСКИЙ КОМПЛЕКС ДИСЦИПЛИНЫ
«ПРОГРАММИРОВАНИЕ»
основной профессиональной образовательной программы подготовки бакалавров по направлению «09.03.01 Информатика и вычислительная техника»
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
по выполнению курсовой работы
Лысьва 2016 г.

Разработчик-составитель профессор, канд. пед. наук А.П. Шестаков
Методические указания рассмотрены и одобрены на заседании кафедры естественнонаучных дисциплин «14» сентября 2016 г, протокол № 02.

ОГЛАВЛЕНИЕ
1 ОБЩИЕ ПОЛОЖЕНИЯ .................................................................................................................. 4 2 ПРИМЕРНАЯ ТЕМАТИКА КУРСОВЫХ РАБОТ ...................................................................... 6 3 МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ВЫПОЛНЕНИЮ КУРСОВОЙ РАБОТЫ ........ 15
Основные этапы работы студента над курсовой работой ........................................................ 15
Методические указания по проведению этапов работы ........................................................... 15
ТРЕБОВАНИЯ ПО ОФОРМЛЕНИЮ КУРСОВОЙ РАБОТЫ .................................................... 18
ПРИЛОЖЕНИЕ А
Образец титульного листа курсовой работы ................................................. 19
ПРИЛОЖЕНИЕ Б
Бланк задания на выполнение курсовой работы ........................................... 20

1 ОБЩИЕ ПОЛОЖЕНИЯ
Методические указания предназначены для студентов направления
09.03.01 Информатика и вычислительная техника. Они помогают выполнить и оформить документацию к курсовой работе.
Курсовая работа имеет целью научить студентов самостоятельно применять полученные знания для комплексного решения конкретных теоретических и практических задач, привить навыки самостоятельной разработки консольного приложения на языке высокого уровня С/С++ .
Курсовая работа по дисциплине Программирование предназначена для обучения студентов разработке консольного приложения для реализации класса.
Темы курсовой работы разрабатывается преподавателем в соответствии с основным содержанием учебной дисциплины и согласовываются со студентом по его желанию, рассматриваются и утверждаются на заседании кафедры.
Заданием на курсовую работу является разработка консольного приложения реализации классов на языке программирования высокого уровня
С/С++.
Курсовая работа выполняется студентами в часы самостоятельной работы.
Работа считается выполненным, если: разработано консольное приложение реализации класса, которое выполняет заданные операции и задачи с данным классом; подготовлена и оформлена в виде пояснительной записки вся необходимая документация.
Курсовая работа выносится на открытую защиту. В ходе защиты студент демонстрирует работоспособную программу, которое выполняет все перечисленные задачи. По результатам его защиты студенту выставляется оценка.


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

2 ПРИМЕРНАЯ ТЕМАТИКА КУРСОВЫХ РАБОТ
Разработка консольного приложения реализации классов (по вариантам)
Варианты индивидуальных заданий:
I. Реализовать класс для выполнения следующих операций над комплексными числами:
1) сложение;
2) вычитание;
3) умножение;
4) деление;
5) модуль комплексного числа;
6) возведение комплексного числа в степень n (n — натуральное).
Используя этот класс, решить задачи:
1. Дан массив A — массив комплексных чисел. Получить массив C, элементами которого будут модули сумм рядом стоящих комплексных чисел.
2. Дан массив A[M] — массив комплексных чисел. Получить матрицу
B[N, M], каждая строка которой получается возведением в степень, равную номеру этой строки, данного массива A.
II. Реализовать класс для выполнения следующих операций над обыкновенными дробями вида (P — целое, Q — натуральное):
1) сложение;
2) вычитание;
3) умножение;
4) деление;
5) сокращение дроби;

6) возведение дроби в степень n (n — натуральное);
7) функции, реализующие операции отношения (равно, не равно, больше или равно, меньше или равно, больше, меньше).
Используя этот класс, решить задачи:
1. Дан массив A — массив обыкновенных дробей. Найти сумму всех дробей, ответ представить в виде несократимой дроби. Вычислить среднее арифметическое всех дробей, ответ представить в виде несократимой дроби.
2. Дан массив A — массив обыкновенных дробей. Отсортировать его в порядке возрастания.
III. Реализовать класс для выполнения следующих операций с квадратными матрицами:
1) сложение двух матриц;
2) умножение одной матрицы на другую;
3) нахождение транспонированной матрицы;
4) вычисление определителя матрицы.
Используя этот класс, решить следующие задачи:
1. Решить систему линейных уравнений N-го порядка (2 <= N <= 10) методом Крамера.
2. Задан массив величин типа Matrica. Отсортировать этот массив в порядке возрастания значений определителей матриц.
3. Даны две величины типа Matrica А и В. Составить программу, находящую матрицу С, равную А×ВВ×А.
IV. Реализовать класс для выполнения следующих операций над векторами:
1) сложение;


2) вычитание;
3) скалярное умножение векторов;
4) умножение вектора на число;
5) длина вектора.
Используя этот класс, решить задачи:
1. Дан массив A — массив векторов. Отсортировать его в порядке убывания длин векторов.
2. С помощью датчика случайных чисел сгенерировать 2N целых чисел. N пар этих чисел задают N точек координатной плоскости. Вывести номера тройки точек, которые являются координатами вершин треугольника с наибольшим углом.
V. Реализовать класс для выполнения следующих операций над натуральными числами в P-ичной системе счисления (2 <=P <= 9):
1) сложение;
2) вычитание;
3) умножение;
4) деление;
5) перевод из десятичной системы счисления в P-ичную;
6) перевод из P-ичной системы счисления в десятичную;
7) функция проверки правильности записи числа в P-ичной системе счисления;
8) функции, реализующие операции отношения (равно, не равно, больше или равно, меньше или равно, больше, меньше).
Используя этот класс, решить задачи:

1. Возвести число в степень (основание и показатель степени записаны в
Pиной системе счисления). Ответ выдать в P-ичной и десятичной системах счисления.
2. Дан массив A —массив чисел, записанных в P-ичной системе счисления. Отсортировать его в порядке убывания. Ответ выдать в P-ичной и десятичной системах счисления.
VI. Реализовать класс для выполнения следующих операций над натуральными числами в шестнадцатеричной системе счисления:
1) сложение;
2) вычитание;
3) умножение;
4) деление;
5) перевод из двоичной системы счисления в шестнадцатеричную;
6) перевод из шестнадцатеричной системы счисления в десятичную;
7) функция проверки правильности записи числа в шестнадцатеричной системе счисления;
8) функции, реализующие операции отношения (равно, не равно, больше или равно, меньше или равно, больше, меньше).
Используя этот класс, решить задачи:
1. Возвести число в степень (основание и показатель степени записаны в шестнадцатеричной системе счисления). Ответ выдать в шестнадцатеричной и десятичной системах счисления.
2. Дан массив A —массив чисел, записанных в шестнадцатеричной системе счисления. Отсортировать его в порядке убывания. Ответ выдать в шестнадцатеричной и десятичной системах счисления.

VII. Определим граф как набор точек, некоторые из которых соединены отрезками, подграф — граф, подмножество данного графа.
Реализовать класс, определяющий:
1) число точек в графе;
2) число отрезков в графе;
3) число изолированных подграфов в графе (подграфов, не соединенных отрезками);
4) диаметр графа — длину максимальной незамкнутой линии в графе
(длина каждого звена — 1);
5) граф —объединение двух графов;
6) подграф —пересечение двух графов;
7) подграф —дополнение данного графа до полного (графа с тем же количеством вершин, что и в данном, и с линиями между любыми двумя вершинами);
8) число отрезков, выходящих из каждой вершины графа;
9) при запуске должны инициализироваться переменные: Full_Graph —
полный граф с числом вершин NumberOfVertix, Null_Graph — граф без отрезков с числом вершин NumberOfVertix.
Граф представить как объект
Const NumberOfVertix = 50;
Type Graph = Array[1..NumberOfVertix, 1..NumberOfVertix]
Of Boolean;
Используя модуль, решить задачу:
найти все правильные графы из N вершин (граф правилен, если из всех вершин выходит равное количество отрезков).
VIII. Реализовать класс для работы с длинными числами:


1) сложение;
2) вычитание;
3) умножение;
4) нахождение частного и остатка от деления одного числа на другое;
5) функции, реализующие операции отношения (равно, не равно, больше или равно, меньше или равно, больше, меньше).
Используя этот класс, решить задачи:
1. Возвести число в степень (основание и показатель степени — длинные числа).
2. Дан массив длинных чисел. Упорядочить этот массив в порядке убывания.
IX. Реализовать класс для выполнения операций с многочленами от одной переменной (первый многочлен степени m, второй — степени n):
1) сложение;
2) вычитание;
3) умножение;
4) деление с остатком;
5) операции отношения (равно, не равно);
6) возведение в натуральную степень k;
7) вычисление производной от многочлена;
8) вычисление значения в точке x
0
Используя этот класс, решить задачи:
1. Найти наибольший общий делитель многочленов P(x) и Q(x).
2. Вычислить: P
s
(x) – Q
r
(x).

X. Разработать способ представления множеств. Создать класс, позволяющий выполнять следующие операции над элементами таких множеств:
1) объединение;
2) пересечение;
3) разность;
4) функция проверки принадлежности элемента множеству;
5) функция проверки, является ли данное множество подмножеством
(надмножеством) другого.
Используя созданный модуль, решить следующие задачи:
1. Дан массив множеств. Упорядочить элементы массива в порядке возрастания количества компонент соответствующих множеств.
2. Разработать программу, которая вводит несколько множеств, выражение, операндами которого являются эти множества, с операциями объединения, пересечения и вычитания, вычисляет значение этого выражения и выводит результат.
XI. Разработать класс для работы с базой данных определѐнной структуры (задать самостоятельно), хранящейся в файле. Предусмотреть следующие действия:
1) добавление записи в базу в конец файла;
2) удаление записи (записей) из базы по определенному критерию
(заданному значению одного из полей);
3) сортировка записей в базе по одному из полей (разработать общий алгоритм сортировки с использованием нетипизированных параметров) с записью результата сортировки в новый файл;
4) выборка записей из базы по определенному критерию (заданному значению одного из полей) с записью в другой файл;

5) добавление записи в отсортированную базу с сохранением упорядоченности по выбранному критерию.
Используя класс, решить следующие задачи:
1. Даны две базы данных заданной структуры, упорядоченные по одному и тому же признаку. Добавить все компоненты второй базы в первую, сохранив еѐ упорядоченность;
2. Выбрать и поместить в текстовый файл записи, отвечающие нескольким критериям одновременно (2–3).
XII. Разработать класс для работы с обыкновенными дробями, числителем и знаменателем которых являются длинные числа.
В модуле должны быть представлены следующие операции над обыкновенными дробями:
1) сложение;
2) вычитание;
3) умножение;
4) деление;
5) сокращение;
6) выделение целой части;
7) шесть операций отношения (разработать логические функции).
Используя разработанный класс, решить задачу:
1. Дан массив обыкновенных дробей. Найти разность минимального и максимального элементов массива.
XIII. Разработать класс для работы с числами, записанными в римской системе счисления.
Класс должен содержать подпрограммы для следующих операций:


1) перевод натурального числа из десятичной системы счисления в римскую; 2) перевод числа из римской системы счисления в десятичную;
3) сложение;
4) вычитание;
5) умножение;
6) целочисленное деление и нахождение остатка от деления;
7) операции отношения (описать в виде логических функций).
Используя разработанный класс, решить следующие задачи:
1. Дан массив чисел, записанных в римской системе счисления. Выполнить сортировку этого массива. Ответ вывести в десятичной и римской системах счисления.
2. Даны два массива натуральных чисел. В одном из них числа записаны в десятичной системе счисления, в другом — в римской. Выписать те числа, которые встречаются как в том, так и в другом массиве, или сообщить об их отсутствии. В случае положительного ответа результат представить в римской и десятичной системах счисления.

3 МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ВЫПОЛНЕНИЮ
КУРСОВОЙ РАБОТЫ
Основные этапы работы студента над курсовой работой
Этап
Содержание
Сроки
1.
Ознакомление с примерным списком тем
Первое лабораторное занятие в семестре, в котором предусмотрено написание курсовой работы
2.
Выбор темы, подбор литературы и согласование с научным руководителем
В течение 3-х недель с начала занятий в семестре
3.
Работа над текстом курсовой работой
4-6 недель.
4.
Оформление курсовой работы и передача готовой курсовой работы научному руководителю для проверки
Не позднее 2-х недель до начала сессии.
5.
Проверка курсовой работы
1 неделя после сдачи работы научному руководителю
6.
Возврат проверенной курсовой работы студенту. Доработка курсовой работы в случае необходимости и подготовка к защите курсовой работы.
1 неделя после сдачи работы научному руководителю
7.
Защита курсовой работы
Не позднее 1 недели до начала сессии
Методические указания по проведению этапов работы
Подбор литературы
Изучение литературы по выбранной теме целесообразно начинать с просмотра нескольких учебников. Это позволит получить общее представление о вопросах разработки классов на языке высокого уровня С/С++.
Работа над текстом курсовой работы
После того, как работа по подбору источников завершена и имеется
определенное представление об избранной теме, можно составить
предварительный план. План курсовой работы должен включать:
ВВЕДЕНИЕ (актуальность темы)
ОСНОВНУЮ ЧАСТЬ формулировка задания возможные исходные данные и результат неформальное изложение алгоритма (блок-схема, словесное описание, формулы) текст программы с комментариями и описанием назначения переменных) набор тестов как называется программа, в каких файлах и каталогах она находиться какие библиотеки, файлы и модули, технические средства необходимы для ее выполнения как программу вызвать на исполнение и как ввести исходные данные
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
ПРИЛОЖЕНИЯ (если будут).
Оформление курсовой работы
Тщательно отредактированный и вычитанный после написания (печати) текст курсовой работы необходимо правильно оформить. Курсовая работа сдается в печатном виде и электронном носителе (диске).
Нумерация страниц начинается с титульного листа. На титульном листе курсовой работы должна содержаться следующая информация: наименование вуза, кафедра, по которой выполняется работа, название темы, аббревиатура студенческой группы, фамилия и инициалы студента, фамилия и инициалы научного руководителя, а также его ученая степень и должность, город и текущий год (Приложение А).
Основные требования, предъявляемые к курсовой работе