- •Д.Г. Хохлов
- •Оглавление
- •Предисловие
- •1. Основные понятия
- •2. Проектирование программы
- •2.1. Постановка и анализ задачи
- •2.2. Внешнее проектирование
- •2.2.1. Методика внешнего проектирования
- •2.2.2. Внешнее представление данных
- •2.3. Проектирование структуры программы
- •2.4. Проектирование модуля
- •2.4.1. Этапы проектирования модуля
- •2.4.2. Стиль программирования
- •2.4.3. Пример проектирования модуля
- •3. Отладка программы
- •3.1. Планирование отладки
- •3.2. Проектирование тестов
- •3.3. Отладочные средства
- •5.1.2. Файл проекта
- •6.2. Выполнение и оформление работы
- •6.2.1. Задание
- •6.2.2. Описание применения
- •6.2.3. Описание программы
- •6.2.3. Подготовка к отладке программы
- •6.2.4. Отладка программы
- •6.2.5. Заключение
- •6.2.6. Общие правила оформления
- •Список литературы
- •Приложение. Пример выполнения курсовой работы
- •1. Задание
- •2. Описание применения
- •2.1. Постановка задачи
- •2.2. Обращение к программе
- •2.3. Входные данные
- •2.4. Выходные данные
- •2.5. Сообщения
- •2.5.1. Информационные сообщения
- •2.5.2. Сообщения об ошибках
- •3. Описание программы
- •3.1. Метод решения задачи
- •3.2. Структура программы
- •3.3. Описание модулей
- •3.3.1. Main - главный модуль
- •3.3.2. Pminc - поиск минимального цикла
- •3.3.3. Vvodg - ввод графа
- •3.3.4. Vyvodp - вывод пути
- •4. Подготовка к отладке программы
- •4.1. План отладки
- •4.2. Проектирование тестов
- •4.2.1. Тесты черного ящика
- •4.2.2. Тесты белого ящика
- •4.3. Отладочные средства
- •1. Отладка программы
- •3. Заключение
- •Список литературы
- •Приложение 1. Системные файлы проекта
- •Приложение 2. Текст программы модуля main
- •Приложение 3. Текст программы модуля pminc
- •Приложение 4. Текст программы модуля vvodg
- •Приложение 5. Текст программы модуля vyvmsm
- •Приложение 6. Текст программы модуля vyvodp
- •Приложение 7. Текст программы модуля vyvsoob
- •Приложение 8. Текст отладочной программы драйвера dvvodg
- •Приложение 9. Результаты тестирования программы
- •Приложение 10. Трудоемкость курсовой работы
- •Приложение 11. Дневник выполнения курсовой работы
Список литературы
1. Белецкий Я. Энциклопедия языка Си. - М.: Мир, 1992.
2. Бикмурзина А.Р. Лабораторный практикум по программированию. - Казань: КГТУ, 2000.
3. Брукс Ф.П. мл. Как проектируются и создаются программные комплексы. – М.: Наука, 1979.
4. Ван Тассел Д. Стиль, разработка, эффективность, отладка и испытание программ. – М.: Мир, 1981.
5. Вирт Н. Алгоритмы + структуры данных = программы. - М.: Мир, 1985.
6. Вирт Н. Алгоритмы и структуры данных. - М.: Мир, 1989.
7. Гудман С., Хидетниеми С. Введение в разработку и анализ алгоритмов. - М.: Мир, 1981.
8. Дал У., Дейкстра Э., Хоор К. Структурное программирование. - М.: Мир, 1975.
9. Единая система программной документации (ЕСПД). – М.: Изд-во стандартов, 1990.
10. Касьянов В.Н., Сабельфельд В.К. Сборник заданий по практикуму на ЭВМ.- М.: Наука, 1986.
11. Керниган Б., Ритчи Д. Язык программирования Си. - М.: Финансы и статистика, 1992.
12. Кнут Д. Искусство программирования на ЭВМ. Т. 1. Основные алгоритмы. - М.: Мир, 1976., Т. 3. Сортировка и поиск. - М.: Мир, 1979.
13. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. М.: МЦНМО, 2000.
14. Лингер Р., Миллс Х., Уитт Б. Теория и практика структурного программирования. - М.: Мир, 1982.
15. Липский В. Комбинаторика для программистов. - М.: Мир, 1988.
16. Майерс Г. Надежность программного обеспечения. - М.: Мир, 1980.
17. Майерс Г. Искусство тестирования программ. - М.: Финансы и статистика, 1982.
18. Медведев В.И., Рохлин Ф.З., Хохлов Д.Г. Технология программирования: Учебное пособие. - Казань: КАИ, 1983.
19. Медведев В.И. Объектно-ориентированное программирование. - Казань: Мастер Лайн, 2003.
20. Мейер Б., Бодуэн К. Методы программирования: в 2-х томах. - М.: Мир, 1982.
21. Методические указания по оформлению курсовых работ, проектов и отчетов по научно-исследовательской работе студентов /Авторы-составители Ф.И. Эминов, Л.М. Шарнин. - Казань: КАИ, 1983.
22. Подбельский В.В., Фомин С.С. Программирование на языке Си: Учебное пособие. – М.: Финансы и статистика, 2001.
23. Рейнгольд Э., Нивергельт Ю., Део Н. Комбинаторные алгоритмы. Теория и практика. - М.: Мир, 1980.
24. Фокс Дж. Программное обеспечение и его разработка. – М.: Мир, 1985.
25. Холл П. Вычислительные структуры. Введение в нечисленное программирование. - М.: Мир, 1978.
26. Хохлов Д.Г. Структуры данных и комбинаторные алгоритмы. Учебное пособие. - Казань: КГТУ (КАИ), Кафедра АСОИУ, 2003.
27. Хохлов Д.Г. Введение в программирование. Учебное пособие. - Казань: КГТУ (КАИ), Кафедра АСОИУ, 2003.
28. Хохлов Д.Г., Захарова З.Х. Практикум по структурам данных и комбинаторным алгоритмам: Учебное пособие. - Казань: КГТУ (КАИ), Кафедра АСОИУ, 2000.
29. Хохлов Д.Г., Захарова З.Х. Введение в программирование. Практикум на языке С: Учебное пособие. - Казань: КГТУ (КАИ), Кафедра АСОИУ, 2003.
Приложение. Пример выполнения курсовой работы
Министерство образования Российской Федерации
Казанский государственный технический университет
имени А.Н. Туполева
-------------------------------------------------
Кафедра АСОИУ
К У Р С О В А Я Р А Б О Т А
по программированию на языке высокого уровня
Поиск кратчайшего цикла графа
(Задание 5)
ИСПОЛНИТЕЛЬ: студент группы 4107 И.И. Иванов
РУКОВОДИТЕЛЬ: доцент кафедры АСОИУ Д.Г. Хохлов
Оценка__________________
Подпись_________________
"___"____________ 2003 г.
КАЗАНЬ 2003
СОДЕРЖАНИЕ
1. ЗАДАНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. ОПИСАНИЕ ПРИМЕНЕНИЯ . . . . . . . . . . . . . . . . . . 4
2.1. Постановка задачи . . . . . . . . . . . . . . . . . . . . . . . 4
2.2. Обращение к программе . . . . . . . . . . . . . . . . . . 4
2.3. Входные данные . . . . . . . . . . . . . . . . . . . . . . . . 5
2.4. Выходные данные . . . . . . . . . . . . . . . . . . . . . . . 5
2.5. Сообщения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.5.1. Информационные сообщения . . . . . . . . 6
2.5.2. Сообщения об ошибках . . . . . . . . . . . . . 6
3. ОПИСАНИЕ ПРОГРАММЫ . . . . . . . . . . . . . . . . . . . 7
3.1. Метод решения задачи . . . . . . . . . . . . . . . . . . . 7
3.2. Структура программы . . . . . . . . . . . . . . . . . . . 8
3.3. Описание модулей . . . . . . . . . . . . . . . . . . . . . . 9
3.3.1. main - главный модуль . . . . . . . . . . . . . . 9
3.3.2. pminc - поиск минимального цикла . . . 9
3.3.3. vvodg - ввод графа. . . . . . . . . . . . . . . . . . 10
3.3.4. vyvmsm - вывод матрицы смежности . . 6
3.3.5. vyvodp - вывод пути . . . . . . . . . . . . . . . . 11
3.3.6. vyvsoob - вывод сообщения . . . . . . . . . 7
4. ОТЛАДКА ПРОГРАММЫ . . . . . . . . . . . . . . . . . . . 3
4.1. План отладки . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2. Проектирование тестов. . . . . . . . . . . . . . . . . . . 12
4.2.1. Тесты черного ящика . . . . . . . . . . . . . . . 12
4.2.2. Тесты белого ящика. . . . . . . . . . . . . . . . . 14
4.3. Отладочные средства . . . . . . . . . . . . . . . . . . . . 15
4.4. Отладка программы. . . . . . . . . . . . . . . . . . . . . . 3
ЗАКЛЮЧЕНИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
СПИСОК ЛИТЕРАТУРЫ . . . . . . . . . . . . . . . . . . . . . . . . 16
ПРИЛОЖЕНИЯ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1. Системные файлы проекта. . . . . . . . . . . . . . . . . . 17
2. Текст программы модуля main. . . . . . . . . . . . . . . 18
3. Текст программы модуля pminc . . . . . . . . . . . . . 19
4. Текст программы модуля vvodg . . . . . . . . . . . . . 20
5. Текст программы модуля vyvmsm. . . . . . . . . . . . 11
6. Текст программы модуля vyvodp. . . . . . . . . . . . . 20
7. Текст программы модуля vyvsoob . . . . . . . . . . . 12
8. Текст отладочной программы драйвера dvvodg . 21
9. Результаты тестирования программы. . . . . . . . . . 12
10. Трудоемкость курсовой работы . . . . . . . . . . . . . 12
11. Дневник выполнения курсовой работы . . . . . . . 12