Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

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

Поиск ближайших точек - C++

27.05.2009, 23:32. Просмотров 800. Ответов 0
Метки нет (Все метки)

Здравствуйте! Есть задача, язык си:
1.Фиксируем несколько точек (А,Б,С.Д и т.д. их может быть сколько угодно), их координаты вводим с клавиатуры
2.Около них имеется множество других точек, чьи координаты мы также задаем с клавиатуры.
3.Надо найти из этого "множества других точек" ближайшую к каждой из пункта 1, а также вывести это минимальное расстояние и координаты этой точки.
Ну т.е. в ответе мы должны иметь типа :
"
ближайшая к А точка Б1 с координатами (2,3), расстояние=4
ближайшая к Б точка Б2 с координатами (3,7), расстояние=2
ближайшая к С точка Б3 с координатами (1,7), расстояние=3
ближайшая к Д точка Б4 с координатами (3,7), расстояние=1.73
..."
и т.д. для каждой точки.


Есть код, который работает так же, но только для 1 точки. Т.е в пункте 1. мы имеем не (А,Б,С,Д..) а только А
Т.е. фактически мне нужно вставить в этот код условие для множества точек.
Не знаю как сделать, помогите пожалуйста!

Код
#include <iostream>
#include <math.h>

using namespace std;

int main()
{
int k,n,m;
float r,p;

cout<< "zadaite kolichestvo sravnivaemyh tochek (vmeste s A): ";
cin>> k;

float **B;
B = new float *[k];
for (int i = 0; i < k; i ++)
B[i] = new float [2];
B[0][0]=4, B[0][1]=5;

for (n=1; n<k; n++)
{
cout<<"vvedite koordinaty"<< n<<" tochki:\n";
cout<<"x"<<n<<"= ";
cin>>B[n][0];
cout<<"y"<<n<<"= ";
cin>>B[n][1];
}

m=1;
r=sqrt((B[0][0]-B[1][0])*(B[0][0]-B[1][0])+(B[0][1]-B[1][1])*(B[0][1]-B[1][1]));

for (n=2; n<k; n++)
{
p=sqrt((B[0][0]-B[n][0])*(B[0][0]-B[n][0])+(B[0][1]-B[n][1])*(B[0][1]-B[n][1]));
if (p<r)
{m=n, r=p;}
}
cout<<"tochka B"<<m<<" raspolozhena na minimalnom rasstoyanii r="<<r<<"\n";

return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2009, 23:32
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Поиск ближайших точек (C++):

Поиск трех ближайших точек к данной - C++
Есть массив точек, заданных координатами х и y. Нужно найти три ближайшие точки к данной, чтобы данная точка была в треугольнике,...

Поиск ближайших точек на сфере. Заплатил бы - C++
Напишите программу, которая среди расположенных на поверхности точек сферы, будет искать ближайшие пару себя. Программа должна использовать...

Поиск двух ближайших друг к другу точек - C++
5. Разработать программу, которая ищет во введенном множестве точек (заданных парами координат) две ближайшие друг к другу и выводит...

Нахождение ближайших точек методом декомпозиции - не понятен алгоритм - C++
Преподаватель задал решить задачу по нахождению ближайших точек методом декомпозиции, но мне не понятен алгоритм, гугл не дал мне...

Поиск невидимых точек - C++
Здравствуйте. Натолкните, пожалуйста, на мысль, как решить такую задачу: &quot;В массиве хранятся значения высот вертикального сечения...

Поиск квадратов из точек - C++
Всем доброго времени суток, уважаемые форумчане. Решаю задачу, вот столкнулся с проблемой, да и в общем прощу проанализировать код, что...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.05.2009, 23:32
Привет! Вот еще темы с ответами:

Поиск точек на плоскости - C++
разработать объектно-ориентированную прогу для поиска пары наиболее близких точек из любого заданного набора точек на плоскости. Декартовые...

Поиск пиковых точек в двумерном массиве - C++
Здравствуйте, подскажите пожалуйста алгоритм для поиска пиковых точек в двумерном массиве, то есть элементов матрицы, являющихся наибольшим...

Поиск координат центра окружности описанной около точек - C++
Здравствуйте, задача состоит в следующем, даны координаты n точек (x1;y1),(x2;y2)...(xn;yn) в виде массива, надо найти координаты центра и...

Ряд Лорана. Поиск изолированных особых точек аналитических функций - C++
Нужна для нахождения изолированных особых точек аналитических функций. Прошу, помогитеееее!


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru