Определение достижимости города в изменяемой системе двусторонних дорог

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

? Isv.Value значение больше значения количества городов.

Используемые внешние переменные: pos - количество городов.

Подпрограмма procedure TForm1.IzverChange(Sender: TObject);

Входные данные: данные с счетчика Izver.Value;

Входные данные: нет;

Процесс обработки: подпрограмма делает ограничение на ввод в счетчик Izver.Value значение больше значения количества городов.

Используемые внешние переменные: pos - количество городов.

Подпрограмма procedure TForm1.N6Click(Sender: TObject);

Входные данные: нет;

Выходные данные: нет;

Процесс обработки: вызов формы 2;

Используемые внешние переменные: нет;

Подпрограмма procedure redrow_result_true;

Входные данные: количество городов, запись ver;

Выходные данные: изображение на компоненте Image1;

Процесс обработки: аналогичен подпрограмме redrow за исключением выделения ответа другим цветом. В данном случае зеленым, который показывает достижимость всех городов из заданного города А.

Используемые внешние переменные: i,j - счетчики.

Подпрограмма procedure redrow_result_false;

Входные данные: количество городов, запись ver;

Выходные данные: изображение на компоненте Image1;

Процесс обработки: аналогичен подпрограмме redrow за исключением выделения ответа другим цветом. В данном случае синим, который показывает не достижимость некоторых городов из заданного города А.

Используемые внешние переменные: i,j - счетчики.

Подпрограмма procedure TForm1.StringGrid3Set(Sender: TObject; ACol, ARow: Integer; const Value: String);

Входные данные: нет;

Выходные данные: нет;

Процесс обработки: подпрограмма выполняет заполнение матрицы смежности симметрично относительно главной диагонали.

Используемые внешние переменные: нет;

Подпрограмма procedure Dostizhimost(izver:integer);

Входные данные: номер города;

Выходные данные: текстовое сообщение о достижимости или не достижимости до всех городов из заданного города А;

Процесс обработки: подпрограмма строит матрицу достижимости по матрице смежности, делает проверку на достижимость до всех городов из заданного города А через цикл и выводит сообщение с соответствующим результатом.

Используемые внешние переменные: dost - двумерный динамический массив, или матрица достижимости; i,j,k - счетчики.

 

2.3Описание подпрограмма модуля Unit 2

 

Подпрограмма procedure TForm2.Label1Click(Sender: TObject)

Входных данных: нет;

Выходных данных: нет;

Процесс обработки: подпрограмма выполняет закрытие формы 2 по клику на содержимое формы;

Используемые внешние переменные: нет;

 

2.4Описание подпрограмм модуля Unit 3

 

Подпрограмма procedure TForm3.Button1Click(Sender: TObject);

Входные данные: нет;

Выходные данные: нет;

Процесс обработки: закрытие формы;

Используемые внешние переменные: нет;

 

2.5Описание подпрограмм модуля Unit 4

 

Подпрограмма procedure TForm4.Button1Click(Sender: TObject)

 

Входные данные: нет;

Выходные данные: нет;

Процесс обработки: подпрограмма выполняет закрытие заставочной формы при нажатии на клавишу ОК.

Используемые внешние переменные: нет.

 

2.6Тестовые наборы для отладки интерфейса пользователя

 

Для отладки интерфейса разработаны следующие тестовые наборы:

1.Случай использования: запуск программы.

Предусловие: открыта заставочная форма.

Тестовый случай: нажатие пользователем на кнопку ОК;

Ожидаемый результат: закрытие заставочной формы, появление окна главной формы. (Приложение В, рисунок 1)

2.Случай использования: добавление нового города на компонент Image1.

Предусловие: открыта главная форма;

Тестовый случай: нажатие пользователем на кнопку Разместить город 1 и нажатие левой клавишей мыши на область компонента Image1;

Ожидаемый результат: на компоненте Image1 появится эллипс с номером города в центре желтого цвета. (Приложение Г, рисунок 2)

3.Случай использования: добавление дороги между городами;

Предусловие: открыта головная форма, имеются 2 города, не соединенных между собой дорогой.

Тестовый случай: нажатие пользователем на кнопку Добавить дорогу на главной форме или же в контекстном меню, после последующее нажатие на город 1 и город 2.

Ожидаемый результат: на компоненте Image1 между двумя городами появится линия, на концах который расположено по 4 красных маленьких эллипса разного диаметра. (Приложение Г, рисунок 3)

4.Случай использования: удаление города.

Предусловие: открыта головная форма, имеется хотя бы 2 города на компоненте Image1.

Тестовый случай: нажатие пользователем на кнопку Удалить город на главной форме или же через контекстное меню.

Ожидаемый результат: на компоненте Image1 исчезнет изображение города, на который было произведено нажатие левой клавишей мыши, также уменьшение матрицы смежности и достижимости на -1 строку и столбец и удаление дорог, если они были от этого города. (Приложение Г, рисунок 4)

5.Случай использования: просмотр задания;

Предусловие: открыта главная форма;

Тестовый случай: нажатие пользователем на кнопку Задание;

Ожидаемый результат: появление формы, с содержанием задания, которое выполняет данная программа. (Приложение Г, рисунок 5)

6.Случай использования: проверка на достижимость из заданного города А в заданный город В;

Предусловие: задана система дорог и координат, указан начальный и конечный город проверки.

Тестовый случай: нажатие пользователем на клавишу ?/p>