комівояжера. Відстані (Q IJ ) між шістьма містами представлені в таблиці 1.
Пройдемо алгоритм вручну. p align="justify"> Починаємо рух з першого міста в нашій таблиці (Малюнок 3).
Рисунок 3 - Перший крок розрахунку
В
Після цього, ми рухаємося в другій місто, вибираючи з доступних, з мінімальним відстанню (Малюнок 4). br/>
Малюнок 4 - Другий крок розрахунку
В
Таким чином, проробляємо наступні кроки до останнього міста.
Умови прикладу є симетричну задачу.
Після виконаного розрахунку ми бачимо, що відповідь задовольняє умовам. Так само в програмі проводилося кілька інших тестувань, відповіді були позитивними. br/>
2.5 Аналіз отриманих результатів
Після успішного тестування програми, в якості вихідних даних використовувалися параметри, задані в курсовому проектуванні. Результати розрахунку наведені в наступному малюнку 5:
В
Рисунок 5 - Основна форма програми після виведення кінцевих даних
Відповідь: довжина маршруту дорівнює 52, порядок обходу міст:
? 3? 2? 5? 6? 4? 1
При виконання ручних розрахунків результати вийшли позитивними. br/>
Висновок
У ході виконання курсового проекту були вирішені наступні завдання:
1) Побудовано математичну модель;
2) Описано алгоритм задачі;
) Розроблено програмний код мовою програмування C + +;
) Розв'язано поставлене завдання за допомогою розробленої програми;
) Проаналізовано результати;
Таким чином, можна вважати, що мета курсового проекту досягнута.
Додаток 1
Код програми «гшення завдання комівояжера за допомогою алгоритму ДейкстриВ»
//
# include
# include
# include
# include
// main ()
{c2, c3, i, k, j, n, e, q, v, m, z, x, min, a, min2, h = 0, c = 0; (" Koli4estvo gorodov: "); scanf ("% i ", & n);// введення кількість міст * t = new int [n]; * t2 = new int [n]; ** kg = new int * [n]; (i = 0; i