- •Введение
- •1 Постановка задачи
- •2 Описание структуры данных
- •3 Общая структура программы
- •3.1 Состав программы
- •3.2 Описание пользовательского интерфейса
- •4 Описание функций
- •4.1 Функция addInf(char* file)
- •4.2 Функция ticketOut(struct train name)
- •4.3 Функция show(char* file)
- •4.4 Функция searchDeparture(char* file)
- •4.5 Функция searchNum(char* file)
- •4.6 Функция searchTravel(char* file)
- •4.7 Функция del(char* file1)
- •4.8 Функция printFile()
- •4.9 Функция edit(char* file)
- •4.10 Функция menu(char* file_name)
- •5 Результаты работы программы
- •Заключение
- •Список литературы
- •Приложение а
4.9 Функция edit(char* file)
Назначение: редактирование информации о рейсе
Входные данные: file – указатель на файл.
Выходные данные: лтсутствуют.
Вспомогательные переменные:
– int n – номер структуры, изначально равен 0.
– int num – номер рейса для редактирования.
– int point – номер пункта меню.
– int tmp – индикатор наличия искомого рейса, изначально равен 1.
Описание работы функции: открытие в режиме чтения и записи, проверка на правильность открытия файла. Ввод номера рейса для редактирования num. При нахождении рейса с искомым номером, меняется значение индикатора tmp на 0, выводится шапка таблицы и информация о записи с помощью функции ticketOut(struct train name). Далее выводится меню редактирования:
Выберите поле для редактирования:
1. Номер поезда.
2. Пункт назначения.
3. Тип поезда.
4. Время отправления.
5. Время пути.
6. Изменить запись полностью.
Пользователь вводит номер пункта меню и с помощью условий изменяется информация о рейсе. После чего записывается информация в файл и он закрывается. Если рейса с таким номером не обнаружено и tmp = 1, то выводится уведомление «Нет записи о рейсе с введённым номером.».
4.10 Функция menu(char* file_name)
Назначение: главное меню через который осуществлен пользовательский интерфейс.
Входные данные: file_name – указатель на файл.
Выходные данные: отсутствуют.
Вспомогательные переменные:
– int intem – номер пункта меню.
Описание работы функции: пользователь вводит номер пункта меню и вызывается соответствующая функция. Программа заканчивает работу, когда выбран пункт меню 9 – «Выход».
5 Результаты работы программы
Ввод имени файла пользователем показан на рисунке 1.
Рисунок 1 – Ввод имени файла
Очистка экрана после ввода имени файла и вывод текста меню на экран. На рисунке 2 можно видеть, что пользователю предоставляется выбор позиции, ввод номера которой он осуществляет под текстом меню.
Рисунок 2 – Меню
Просмотр задания соответствует пункту меню 1. На рисунке 3 представлен текст задания.
Рисунок 3 – Вывод текста задания, соответствует 1 пункту меню
Чтобы добавить записи о рейсах, пользователю необходимо выбрать пункт меню 2; работа функции представлена на рисунке 4.
Для поиска рейса в определенный временной промежуток, пользователю необходимо выбрать пункт 3; работа функции представлена на рисунке 5.
Если пользователь знает номер рейса, он может просмотреть информацию о нем выбрав 4 пункт; работа функции представлена на рисунке 6.
Рисунок 4 – Добавление новых записей о рейсах, соответствует 2 пункту меню
Рисунок 5 – Поиск рейса в определенный временной промежуток, соответствует 3 пункту меню
Рисунок 6 – Поиск информации по номеру рейса, соответствует 4 пункту меню
Выбрав 5 пункт меню, пользователь сможет найти самый быстрый рейс определенного типа поезда, например, до Саратова, тип поезда – пассажирский (рисунок 7).
Рисунок 7 – Поиск самого быстрого пассажирского рейса до Саратова, выполнено с помощью 5 пункта меню
Просмотр информации обо всех рейсах в форме таблицы производится выбором 6 пункта меню; работа функции представлена на 8 рисунке.
При необходимости удалить информацию о рейсе пользователю необходимо выбрать 7 пункт меню, после чего ввести номер рейса (рисунок 9). На 10 рисунке можно увидеть, что записи больше нет.
Также можно изменить информацию о рейсе как 1 поля, так и все поля. Для редактирования пользователь выбирает 8 пункт меню. Чтобы отредактировать запись, нужно знать номер рейса. При вводе номера появляется информация о рейсе и меню выбора (рисунок 11). После выбора пункта меню редактирования происходит изменение записи (рисунок 12). Изменение информации можно увидеть в общей таблице на рисунке 13.
Для завершения работы с базой данных необходимо выбрать 9 пункт (рисунок 14).
Рисунок 8 – Информация о рейсах, соответствует 6 пункту меню
Рисунок 9 – Удаление информации о рейсе, соответствует 7 пункту меню
Рисунок 10 – Таблица с информацией обо всех рейсах после удаления записи
Рисунок 11 – Редактирование записи, меню редактирования, соответствует 8 пункту меню
Рисунок 12 – Выбор 3 пункта меню редактирования, изменение типа поезда
Рисунок 13 – Результат редактирования записи
Рисунок 14 – Завершение работы, соответствует 9 пункту меню