Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
mykhail
0 / 0 / 0
Регистрация: 16.03.2016
Сообщений: 19
#1

Просчитать минимальную дистанцию между человеком и станциями - C++

16.03.2016, 21:49. Просмотров 198. Ответов 3
Метки нет (Все метки)

Привет , всем.

Скажите пожалуйста , у меня дипломная по проектированию полного маршрута автобусов. И у меня сейчас возникла проблема , в том , что мне нужно просчитать расстояние между человеком и станцией. Допустим , у меня есть один человек и 3 потенциальные станции , я просчитываю дистанцию , сохраняю в векторе и затем мне нужно взять координаты станции с минимальной дистанцией к человеку.
Ниже привожу код цикла , как я делаю , но он берет все равно рендомно координаты.

Спасибо за помощь!
C++
1
2
3
4
5
6
7
8
9
10
11
for (newCoordinate = newPoints.begin(); newCoordinate != newPoints.end(); newCoordinate++)
// в этом цикле у меня допустим 3 координаты с потенциальными станциями
        {
            distanceBetweenBusCoordinateAndNewPoint = sqrt(pow((busRequest->x - newCoordinate->x), 2) + (pow((busRequest->y - newCoordinate->y), 2)));// считаю дистанцию
            distances.push_back(distanceBetweenBusCoordinateAndNewPoint);//добавляю в вектор
            
            
            
            
        }
newdis = min_element(distances.begin(), distances.end());// нахожу минимальную
Вот вопрос , теперь надо координаты этой минимальной.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2016, 21:49     Просчитать минимальную дистанцию между человеком и станциями
Посмотрите здесь:

C++ Оцените информационный объем предложения введенного текста человеком
Как просчитать число ПИ до определенного знака? C++
Вывести минимальную по абсолютной величине разность между соседними числами. C++
C++ Количество прожитых человеком дней
C++ Как просчитать шаги от домов до магазина
Вычислить скорость, с которой бегун преодолевает дистанцию (по заданной длине дистанции и времени) C++ Builder
Определять минимальную сумму между двумя соседними элементами массива C++
C++ На каких перегонах (то есть между какими соседними станциями) в поезде было наименьшее число пассажиров
C++ Через сколько времени спортсмен пробежит заданную дистанцию?
C++ Можно ли просчитать дистанцию между переменными в map?
В цикле while просчитать произведение функции и вывести 5 значений C++
C++ Найти дистанцию между точками на плоскости (использовать перегруженный оператор)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DeadPenguin
 Аватар для DeadPenguin
63 / 63 / 30
Регистрация: 11.03.2016
Сообщений: 252
Завершенные тесты: 1
16.03.2016, 22:03     Просчитать минимальную дистанцию между человеком и станциями #2
mykhail, можете хранить и координаты, и расстояния — тогда придётся передать предикат в min_element.

А можете, зная newdis, пройтись по distances, и найти индекс. Ну а индекс у вас и есть номер станции.
mykhail
0 / 0 / 0
Регистрация: 16.03.2016
Сообщений: 19
16.03.2016, 22:53  [ТС]     Просчитать минимальную дистанцию между человеком и станциями #3
Если допустим , я хочу хранить и координаты и расстояние , как передать предикат в мин_элемент?
Индекс , он покажет допустим , что минимальный элемент находится на второй позиции , мне это не надо. Мне надо чтобы он сохранил минимальную дистанцию , потом я сохранил как-то координаты этой минимальной дистанции и использовал их для дальнейших задач.

Добавлено через 19 минут
я прочитал , допустим мне нужно создать еще
C++
1
2
3
4
5
6
7
struct 
{
 double points()(double x , double y)
{
...
}
}
И потом мне нужно добавить уже этот points в min_element? а что мне нужно написать в этом points , если у меня три координаты или мне нужно как-то сделать так , что там было только 1 координата?
Может я запутано написал , но подскажи пожалуйста.
DeadPenguin
16.03.2016, 22:55     Просчитать минимальную дистанцию между человеком и станциями
  #4

Не по теме:

mykhail, завтра на трезвую голову

Yandex
Объявления
16.03.2016, 22:55     Просчитать минимальную дистанцию между человеком и станциями
Ответ Создать тему
Опции темы

Текущее время: 03:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru