Показать сообщение отдельно
  #7  
Старый 24.04.2017, 06:17
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Не совсем. Тут скорее надо использовать граф.
Т.е. ты задаешь сами пункты, которые являются узлами графа. Далее соединяешь их ребрами. У ребра есть "стоимость" - в твоем случае расстояние между пунктами. Далее 2 варианта:
1. Ты просто задаешь очередность проезда пунктов, программа по графу вычисляет планироуемое расстояние и сообщает тебе. Тут есть проблемка - если граф не полный, т.е. между некоторыми пунктами нет дороги (прямой). Можно сделать так, что бы программа сама искала возможную дорогу, или просто тебя спрашивала.
2. Более сложный вариант. Ты даешь список пунктов, программа вычисляет кратчайший марщрут с заездом во все укащанные пункты. Тут можно решать перебором, не "сваливаясь" в теорию графов, для твоей НЕБОЛЬШОЙ задачки нормально. Ну а если задача большая (кол-во узлов и ребер графа), то придется читать теорию и реализовывать сложный алгоритм.
Ответить с цитированием