![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Структура данных программного комплекса "Q-дерево" |
Реферат Представляемый документ содержит: 52 страницы текста и список из двух источников. Объектом исследования является структура данных «Q-дерево». Цель работы состоит в создании программного комплекса, обеспечивающего работу со структурой данных «Q-дерево», представленной в виде модели. Методы, используемые при разработке, – язык программирования высокого уровня Objec Pascal. Созданный программный продукт обеспечивает выполнение всех требований технического задания. Содержание Введение 1. Техническое задание 1.1 Основание для разработки 1.2 Назначение разработки 1.3 Функциональные требования к программе 1.4 Требования к составу и параметрам технических средств 1.5 Требования к информационной и программной совместимости 1.6 Требования к программной документации 1.7 Порядок контроля и приемки 2. Рабочий проект 2.1 Модуль U i Model 2.1.1 Назначение 2.1.2 Функциональные требования, реализуемые модулем 2.1.3 Глобальные переменные и константы модуля 2.1.4 Подпрограммы модуля 2.2 Модуль U i Mai Form 2.2.1 Назначение 2.2.2 Функциональные требования, реализуемые модулем 2.2.3 Используемые компоненты 2.2.4 Глобальные переменные и константы модуля 2.2.5 Подпрограммы модуля Заключение Список используемых источников Приложение Введение Цель данной курсовой работы – разработка программного продукта, предназначенного для работы со структурой данных «Q-дерево». Существует множество различных структур данных, предназначенных для работы с множествами: деревья, массивы и так далее. Среди них есть Q-деревья, позволяющие хранить множества точек и обеспечивать к ним быстрый и удобный доступ. Практическое значение. Программный продукт позволяет пользоваться Q-деревьями. Актуальность разработки программного продукта состоит в увеличении скорости работы с множествами. Программный продукт должен быть разработан на языке программирования высокого уровня Objec Pascal, использовать принципы объектно-ориентированного программирования и структурный подход к решению поставленных задач. Результатом выполнения курсовой работы должен стать готовый программный продукт, отвечающий всем требованиям технического задания. 1. Техническое задание 1.1 Основание для разработки Основанием для разработки программного продукта служит задание на курсовую работу “Q-дерево точек”. 1.2 Назначение разработки Программный продукт разрабатывается для работы с Q-деревьями точек. 1.3 Функциональные требования к программе Возможность добавления элементов в дерево Удаление элементов из дерева Очистка дерева Подсчет количества элементов Отображение элементов дерева в виде точек на карте Поиск точек в заданной прямоугольной области карты Возможность выбора области карты для просмотра содержащихся в ней точек Отображение точек заданной области карты в отдельном окне просмотра Отображение координат выбранных точек 1.4 Требования к составу и параметрам технических средств Программный комплекс должен корректно работать на компьютере со следующими техническими характеристиками: процессор I el® Celero ® CPU 2.40 ГГц; оперативная память объемом 512 Мб; жесткий диск Seaga e S 380011A, объемом 80 Гб; видеоадаптер AGP 8X; клавиатура; манипулятор типа “мышь”.
1.5 Требования к информационной и программной совместимости Для работы программы необходима операционная система Microsof Wi dows XP Professio al 2002 (SP1-2). 1.6 Требования к программной документации Программная документация должна включать следующие документы: техническое задание; рабочий проект. В приложении к документу &quo ;Рабочий проект&quo ; должен быть приведен листинг исходных текстов программного изделия. 1.7 Порядок контроля и приемки 1.7.1 Возможность добавления элементов в дерево, подсчет количества элементов Добавление элементов в дерево производится щелчком левой кнопкой мыши по точке с нужными координатами в окне просмотра (рис. 1) Рис. 1Результат: добавление точки в дерево и его перерисовка; увеличение количества точек в дереве на единицу. 1.7.2 Удаление элементов из дерева, подсчет количества элементов Удаление элемента производится путем выделения точки с помощью мыши в окне просмотра в режиме выделения точек и щелчка по кнопке «Удалить точку» (рис. 2) Рис. 2Результат: удаление точки из дерева и его перерисовка; уменьшение количества точек в дереве на единицу. 1.7.3 Очистка дерева Очистка дерева (удаление всех элементов) производится щелчком по кнопке «Удалить все» (рис. 3) Рис. 3Результат: удаление всех элементов дерева и соответствующая перерисовка изображений 1.7.4 Возможность выбора прямоугольной области карты для просмотра содержащихся в ней точек, поиск точек в заданной прямоугольной области карты Выбор области просмотра осуществляется перемещением окна выделения с помощью мыши или клавиш (рис. 4) Рис. 4Результат: перемещение окна выделения, поиск и отрисовка точек, находящихся в выделенной области карты. 1.7.5 Отображение элементов дерева в виде точек на карте, отображение координат выбираемых точек Выбор точки производится с помощью щелчка левой кнопкой мыши по точке с нужными координатами в режиме выбора точек (рис. 5) Рис. 5Результат: отображение координат выбранной точки в строке состояния; перерисовка соответствующим цветом ее изображения в окне просмотра. 1.7.6 Отображение точек заданной области карты в отдельном окне просмотра, отображение координат выбираемых точек Для получения координат точки без ее выделения достаточно навести указатель мыши на ее изображение в окне просмотра (рис. 6) Рис. 6Результат: отображение координат точки в строке состояния без ее выбора; перерисовка соответствующим цветом ее изображения в окне просмотра. 2. Рабочий проект 2.1 Модуль U i Model 2.1.1 Назначение Данный модуль представляет собой реализацию модели структуры данных «Q-дерево точек». 2.1.2 Функциональные требования, реализуемые модулем Возможность добавления элементов в дерево Удаление элементов из дерева Очистка дерева Поиск точек в заданной прямоугольной области карты. 2.1.3 Глобальные переменные и константы модуля Константы М = 3 – максимальное число точек в листе; тип – целый; область видимости – внутри и вне модуля; используется в операциях вставки и удаления элементов дерева для проверки числа точек в листьях. 2.1.4 Подпрограммы модуля 2.1.4.1 Функция I ser Poi Функция предназначена для вставки нового элемента в Q-дерево Параметры выходной параметр – указатель на узел дерева, в которое вставляется элемент (тип P ode); входной параметр – границы этого узла (тип Rec ); входной параметр – координаты вставляемой точки (тип Poi ); Функция возвращает логическое значение (тип boolea ), указывающее на изменение количества элементов в дереве Локальные переменные Cur ode – текущий квадрант (тип P ode); DopArray – дополнительный массив, необходимый при делении листа на новые узлы (тип ArrayOfPoi s); midX, midY – координаты середины узла (тип real); ewBou ds – границы нового узла, передаваемые в качестве параметра в рекурсивном вызове функции (тип Rec ); i – счетчик цикла (тип i eger).
Словесный алгоритм В начале своей работы функция проверяет, не является ли пустым параметр-указатель; если да, то для него выделяется память, устанавливаются начальные значения полей и вставляется новый элемент. Если он не является листом, осуществляется цикл переходов к листу с нужными границами. Далее проверяется число элементов в листе, и, если оно меньше допустимого, туда вставляется новая точка; иначе этот лист разделяется на 4 новых, его точки рекурсивно распределяются по новым листам и затем – вставка новой точки. 2.1.4.2 Процедура Dele ePoi Процедура предназначена для удаления элемента из Q-дерева Параметры выходной параметр – указатель на корневой узел дерева, из которого удаляется элемент (тип P ode); входной параметр – границы этого узла (тип Rec ); входной параметр – координаты вставляемой точки (тип Poi ); Предусловия Указатель на дерево не должен быть пустым Локальные переменные Cur ode – текущий квадрант (тип P ode); Pare ode – родительский узел листа с удаляемой точкой; DopArray – дополнительный массив, необходимый при делении листа на новые узлы (тип ArrayOfPoi s); midX, midY – координаты середины узла (тип real); Poi sI odes, umSZ, umSV, umYZ, umYV – переменные, использующиеся при подсчете числа точек в листах (тип real); here – индикатор наличия точки в дереве (тип boolea ); – число точек в листе (тип i eger); i – счетчик цикла (тип i eger). Словесный алгоритм В начале своей работы функция проверяет, не является ли пустым параметр-указатель; если да – выход из подпрограммы. Если он не является листом, осуществляется цикл переходов к листу с нужными границами. Далее проверяется наличие точки в листе, и, если она там не обнаружена, процедура заканчивает свою работу; иначе происходит удаление точки из листа и последующая проверка общего числа точек в соседних листах. Если появилась возможность, соседние листы объединяются в один, старые удаляются. 2.1.4.3 Процедура Clear ree Процедура предназначена для удаления всех элементов Q-дерева Параметры выходной параметр – указатель на узел дерева (тип P ode); Предусловия Указатель на дерево не должен быть пустым Словесный алгоритм В начале своей работы функция проверяет, не является ли пустым параметр-указатель; если да – выход из подпрограммы. Если он не является листом, осуществляются рекурсивные вызовы подпрограммы для каждого из его дочерних узлов; если параметр-указатель является листом, подпрограмма освобождает занятую им память и завершает свою работу. 2.1.4.4 Функция Fi d Функция предназначена для поиска элементов Q-дерева, расположенных в заданной области карты Параметры входной параметр – указатель на узел дерева (тип P ode); параметр-константа – границы этого узла (тип Rec ); параметр-константа – границы заданной области карты (тип Rec ); Функция возвращает список (тип Lis ) элементов дерева, расположенных в заданной области Предусловия Указатель на дерево не должен быть пустым Локальные переменные ewBou ds – границы нового узла, передаваемые в качестве параметра в рекурсивном вызове функции (тип Rec ); i – счетчик цикла (тип i eger). Словесный алгоритм В начале своей работы функция проверяет, не является ли пустым параметр-указатель; если да – выход из подпрограммы.
У модуля должен быть легко различимый заголовок с комментарием, поясняющим функциональное назначение модуля. Имена переменных должны быть мнемоническими. Суть переменных и порядок размещения в них информации должны быть пояснены комментариями, а код закодирован с использованием типовых алгоритмических структур. Структурный анализ — выявление элементов объекта и связей между ними. Структурный подход — набор принципов, характеризующий технологию структурного программирования: модульность программ; структурное кодирование модулей программ; нисходящее проектирование рациональной иерархии модулей программ; нисходящая реализация программы с использованием заглушек; осуществление планирования на всех стадиях проекта; сквозной структурный контроль программных комплексов в целом и составляющих их модулей. СУБД — система управления базами данных. Схема иерархии программы — используется в технологии структурного программирования, отражает только подчиненность модулей (подпрограмм), но не порядок их вызова или функционирование программы
1. Динамические структуры данных: двоичные деревья
2. Применение программного комплекса Electronics Workbench для разработки радиоэлектронных устройств
3. Структуры данных и алгоритмы
4. Динамические структуры данных: очереди
5. Структуры Данных и Абстракции Данных
9. Особенности построения и функционирования программного комплекса расчета тарифов на тепловую энергию
10. АИС управления серверным программным обеспечением на базе программного комплекса Webmin/Alterator
11. Отладка программ и программных комплексов
12. Программный комплекс учёта работы предприятия по озеленению
13. Разработка обучающей программы, поддерживающей изучение темы "Структуры данных"
14. Расчетная методика проектирования программного комплекса
15. Структуры данных и алгоритмы
16. Динамические структуры данных
17. Динамические структуры данных
19. Применение программного комплекса AnsysIcem к решению задач химической промышленности
20. Роль и значение машиностроительного комплекса в структуре народного хозяйства России
21. Структура отитов у детей по данным ЛОР-отделения ПЦ НЦМ-РБ
26. Структура элементарных природно-территориальных комплексов
27. Методика создания структуры базы данных на персональном компьютере
28. Программно-методический комплекс для обучения процессу создания компиляторов
29. Программно–методичный комплекс для мультимедийного представления учебной информации
30. Разработка программного обеспечения для организации интерфейса программно-методического комплекса
32. Структуры и организация данных в ЭВМ
33. Программно-аппаратный комплекс для тестирования интегральных микросхем 155 серии
34. Программное обеспечение базы данный "Экологический мониторинг"
35. Станко- и приборостроение в структуре промышленного комплекса Республики Беларусь
36. Типы и элементы планировочной структуры города
37. Структура организации материи
41. Насекомые лиственных пород деревьев
42. Растения: Гигантская секвойя, Лимонное дерево
43. Финансово-кредитное управление развитием оборонного комплекса России
44. Топливно-энергетический комплекс
45. Машиностроительный комплекс России
47. Территориально-рекреационный комплекс Подольского района
49. Топливно-энергетический комплекс Украины
50. Дания
52. Транспортно энергетический комплекс Дальнего Востока
53. Агропромышленный комплекс Новосибирской области
57. Аппарат государственной власти и его структура
58. Авторское право на программное обеспечение
59. Нормы права. Структура норм права
60. Социально-экономическая структура Верхнеудинска в феодальный период (середина XVII в.- 1862 год)
61. Структура органов власти в США по конституции 1787 года
62. Двухпалатная структура Федерального Собрания
64. Понятие и структура компетенции местного самоуправления
66. Налоги, их состав и структура
67. Программные средства как объект авторского права
68. Образование производственно-социальных комплексов регионов
69. Понятие, структура и методики построения страховых тарифов
73. База данных для проекта досугового учреждения в городе Муроме Владимирской области
74. Декоративное выжигание по дереву
75. Структура культуры. Классификация ее видов
77. Дерево непосредственных составляющих
78. Проблематика и структура пьесы Б. Шоу "Пигмалион"
79. Бальзак: структура и основные идеи "Человеческой комедии"
80. Сравнительное описание слоговых структур английского и каракалпакского языков
82. Классовый и сословный характер общества по данным древневосточных судебников
83. Методы компьютерной обработки статистических данных. Проверка однородности двух выборок
84. Программные средства и приёмы работы на компьютере
89. Электронная почта и факсимильная связь. Структура и прицип работы
90. Глобальные гипертекстовые структуры: WWW
94. Краткий конспект лекций по Теории тестирования аппаратных и программных средств
95. Принцип программного управления. Микропроцессор. Алгоритм работы процессора
97. Информация, информатика, базы данных. Периферийные устройства