
- •Министерство образования и науки, молодежи и спорта Украины Черниговский государственный технологический университет Кафедра информационных и компьютерных систем
- •Техническое задание
- •Шаповал в.Ю. Гр. Ки-111
- •Сохранение данных в двоичном файле и их извлечение.
- •Упаковку данных в архив и извлечение их из архива.
- •Получение справки об использовании системы.
- •Содержание
- •1Постановка задачи
- •Пассажир: ф.И.О., номер паспорта.
- •2Анализ решаемой задачи
- •3Исследование существующих методов организации структур данных
- •4Определение путей и методов решения задачи
- •5Реализована архивация файла, который содержит мультисписокПроектирование программы
- •5.1Разработка структуры данных
- •5.1.1Логическая структура
- •5.1.2Физическое представление структуры данных
- •5.2Разработка типов данных
- •5.3Использование указателей на функции для создания инвариантных подпрограмм
- •5.4Разработка интерфейсов пользователя
- •5.5Алгоритм функционирования системы
- •5.5.1Алгоритм функции добавления элемента в список
- •5.5.2Алгоритм поиска элемента в отсортированном списке
- •5.5.3Алгоритм удаления элемента из списка
- •5.6Состав программы
- •5.6.1Основные функции программы
- •6Использование внешних приложений
- •Список использованных источников
5.6Состав программы
В процессе разработки программы было создано 24 файла: 11 заголовочных файлов, 12 файлов исходников и 1 ресурсный файл.
Перечень файлов:
find_reys.h – заголовочный файл класса формы для поиска рейсов
find_time.h – заголовочный файл класса формы для поиска дат
main_proc.h – заголовочный файл основных процедур
mainwindow.h - – заголовочный файл класса основной формы
pas_add.h – заголовочный файл класса формы для добавления пассажиров
pas_find.h – заголовочный файл класса формы для поиска пассажиров
rew_pas.h – заголовочный файл класса формы для замены пассажиров
rewrite_reys.h – заголовочный файл класса формы для замены рейсов
reys_ad.h – заголовочный файл класса формы для добавления рейсов
time_add.h – заголовочный файл класса формы для добавления дат
time_rewrite.h – заголовочный файл класса формы для замены даты
find_reys.cpp – файл искодников класса формы для поиска рейсов
find_time.cpp – файл искодников класса формы для поиска даты
main_proc.cpp – файл искодников основных процедур
mainwindow.cpp – файл искодников класса главной формы
pas_add.cpp – файл искодников класса формы для добавления пассажиров
pas_find.cpp – файл искодников класса формы для поиска пассажиров
rew_pas.cpp – файл искодников класса формы для замены пассажиров
rewrite_reys.cpp – файл искодников класса формы для замены рейсов
reys_ad.cpp – файл искодников класса формы для добавления рейсов
time_add.cpp – файл искодников класса формы для добавления дат
time_rewrite.cpp – файл искодников класса формы для замены дат
main.cpp – основной файл программы
icons.qrc – ресурсный файл, содержащий иконки для тулбара и меню, а также фоновые рисунки.
5.6.1Основные функции программы
Информационная система содержит функции, которые обслуживают все уровни мультисписка. Ниже приведено описание заголовков всех основных функций.
void** InitArray(); - функция для инициализации массива нетипизированных указателей.
void addToSort(void** &ar, void* pnew, int posAdd); - функция добавления элемента в отсортированный список. Получает указатель на начало мультисписка, указатель на новый элемент и позицию вставки нового элемента.
void ExpendArrPtr (void** &ar, int &SizeAr, int Cnt); - функция расширения массива нетипизированных указателей.
void DelElm(void** &Start,int &cnt,DFunc Func); - функция для удаления элементов из любого уровня мультисписка.
void FindElList2(void** PtrArrPtr, char *Key, int &PosFndEl, bool &FindOK,TFunc Func); - функция поиска методом половинного деления. Работает со всеми уровнями мультисписка.
int list_level_item(QTreeWidgetItem *item); - функция считает уровень элемента в мультисписке по выбранному элементу в TreeWidget.
void show_reys_table(void** Start,QTableWidget *tw); - функция для вывода детальной информации о рейсах в TableWidget.
void show_list(void** Start,QTreeWidget *treeWidget); - функция выводит мультисписок в TreeWidget.
void show_reys_table_time(void** Start,QTableWidget *tw); - функция для вывода детальной информации о датах в TableWidget.
void show_reys_table_pas(void** Start,QTableWidget *tw); - функция для вывода детальной информации о пассажирах в TableWidget.
bool SaveToFile(char* FileName, TFile &f, void * PtrArrU,QString lst_name); - функция сохранения мультисписка в файл.
bool RestoreMltListFromFile(char* FileName, TFile &f, void** &PtrArrR,char nm[20]); - функция восстановления списка из файла.