Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Разработка программы "расписание поездов"

Автор:   •  Январь 4, 2023  •  Курсовая работа  •  10,427 Слов (42 Страниц)  •  174 Просмотры

Страница 1 из 42

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

 К КУРСОВОМУ ПРОЕКТУ

РАЗРАБОТКА ПРОГРАММЫ

«РАСПИСАНИЕ ПОЕЗДОВ»

по дисциплине: ОСНОВЫ ПРОГРАММИРОВАНИЯ

Содержание

  1. Постановка задачи

  1. Описание структур данных
  1. Описание программы и созданных функций
  1. Описание пользовательского интерфейса
  1. Результаты тестирования программы
  1. Заключение
  1. Литература

Приложение 1 (листинг)

3

3

5

10

11

21

22

23

 

  1. Постановка задачи

1.1 Задачей курсового проекта является разработка программы для заданной предметной области «Расписание поездов» с использованием заданных структур данных, которая позволяет вводить информацию, хранить еѐ в текстовом файле, осуществлять поиск, модификацию, сортировку и удаление данных

1.2 Тип хранимой информации и задание на поиск определяются в соответствии с номером варианта

 Вариант 7

 Предметная область – «Расписание поездов». Данные о маршруте поезда хранятся в структуре TRAIN, содержащей следующие поля:

  название пункта назначения;

  номер поезда;

  время отправления.

Задание на поиск: найти поезда, направляющиеся в пункт, название которого введено с клавиатуры.

  1. Описание структур данных

Для записи и сохранения БД используется текстовый файл, имя которого вводится пользователем

Для добавления записей из текстового файла из БД необходимо, чтобы данные в файле имели вид:

Между элементами каждой записи должно быть не менее 2 пробелов или «|». Например Moscow | Y67 | Friday 00:00

Максимальное и минимальное значение размера номера поезда определяется:

const int MAX_TRAIN_NUMBER_SIZE = 10;

const int MIN_TRAIN_NUMBER_SIZE = 1;

Номер поезда не может содержать пробелы и должен состоять только из цифр или латинских букв

Максимальное и минимальное значение размера пункта назначения определяется:

const int MAX_DESTINATION_SIZE = 20;

const int MIN_DESTINATION_SIZE = 2;

Пункт назначения не может содержать более 1 пробела подряд  и должен состоять только из латинских букв

Формат времени: <день недели>  время. Например Friday 16:16

Класс DataBase – структура данных, которая является односвязным списком, содержащим элементы типа TRAIN,  это список, хранящий записи о каждом поезде, отправляющемся куда-либо.

Класс содержит:

    приватный класс TRAIN

    указатель на голову списка - TRAIN *head

    размер списка - int Size

А также методы:

  • bool IsEmpty() – метод для проверки БД на пустоту

Возвращает true, если БД пустая, false – если нет

  • int AddElement(string destination, string train_number, string depacture_time) – добавление элемента типа TRAIN

     Аргументы: пункт назначения, номер поезда, время отправления

  • void RemoveElement(string dst, string t_num, string d_time);

     Удаление элемента типа TRAIN

     Аргументы: пункт назначения, номер поезда, время отправления

  • void PutDataBaseToFileOrScreen(T &stream);

     Вывод всех элементов списка в поток, который указан аргументом     метода(файл, экран)

  • void SearchByDest(string destination);

     Поиск всех поездов, пункт назначения которых совпадает с заданным в аргументах метода

  • void EditMode(string dst, string t_num, string d_time);

     Редактирование элемента типа TRAIN(находит запрашиваемый элемент и просит ввести данные заново)

     NOTE: если какой то элемент изменять не нужно, можно просто ввести skip

     Аргументы: пункт назначения, номер поезда, время отправления

  • void SortElements();

     Сортирует элементы по пункту назначения

  • Приватный метод TRAIN* SearchAll(string dst, string t_num, string d_time)

     Необходим для поиска элемента типа TRAIN, если элемент нашелся – возвращает на него указатель, если нет – возвращает nullptr

...

Скачать:   txt (54.9 Kb)   pdf (565.2 Kb)   docx (592.6 Kb)  
Продолжить читать еще 41 страниц(ы) »
Доступно только на Essays.club