Курсовая работа: Разработка программ с использованием динамической памяти
Рисунок 2.4 - Алгоритм нахождения источников орграфа
2.3 Описание программной реализации
2.3.1 Описание процедур и функций языка
Процедура New – резервирует фрагмент кучи для размещения переменной; формат обращения
New(TP)
TP – типизированный указатель. За одно обращение к процедуре можно зарезервировать не более 65521 байт динамической памяти. Если нет свободной памяти требуемого размера, возникает ошибка периода исполнения. Если память не фрагментирована, последовательные обращения к процедуре будут резервировать последовательные участки памяти, так что начало следующего будет располагаться сразу за концом предыдущего.
Процедура Dispose – возвращает в кучу фрагмент динамической памяти, который ранее был зарезервирован за типизированным указателем; формат обращения
Dispose (TP)
TP – типизированный указатель. При повторном использовании процедуры применительно к уже освобожденному фрагменту возникает ошибка периода исполнения.
2.3.2 Описание функций работы с динамической памятью, графами
Для решения поставленной задачи были разработаны следующие процедуры и функции:
1) procedure AddVer(n:integer); - добавление в список смежности вершины с номером n;
2) procedure AddDug(n,m:integer); - добавление в список дуги (n,m). n и m номера вершин источника дуги и стока соответственно;
3) procedure DelList(p:TUk1); - удаление списка смежных вершин. p – указатель на начало списка;
4) procedure DelVer(n:integer); - удаление вершины с номером n;
5) procedure DelDug(n,m:integer); - удаление дуги (n,m). n и m номера вершин источника дуги и стока соответственно;
6) procedure PrintGraph; - вывод списка смежности на экран в виде матрицы смежности;
7) procedure FindIstok; - поиск и вывод на экран всех источников орграфа.
ВЫВОДЫ
Задание, выданное на летнюю практику, поставило определенные задачи:
1) научится создавать связные структуры данных, используя указатели;
2) научится создавать и манипулировать динамическими структурами данных, такими как связные списки, очереди и стеки;
3) понять работу различных приложений со связными структурами данных.
Решение выданного задания было реализовано с помощью языка программирования Паскаль.
Во время прохождения учебной практики был закреплен теоретический материал по разработке динамических структур данных, были получены практические навыки реализации динамических структур данных на языке высокого уровня для представления и обработки графов.
Приложение А
ЭКРАННЫЕ ФОРМЫ
Рисунок А.1 – Главное меню программы