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

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

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

Найти точку из множества A, наиболее близкую к точке B - C++

29.05.2014, 00:39. Просмотров 474. Ответов 1
Метки нет (Все метки)

Дано множество A из N точек на плоскости и точка B (точки за-
даны своими координатами x, y). Найти точку из множества A, наиболее
близкую к точке B. Расстояние R между точками с координатами (x 1 , y 1 )
и (x 2 , y 2 ) вычисляется по формуле:
R =sqrt((x 2 −x 1 )^2 + (y 2 −y 1 )^2)
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2014, 00:39     Найти точку из множества A, наиболее близкую к точке B
Посмотрите здесь:

Даны два неубывающих массива X=(xi),i=1.n, n<=10, и Y=(yi),i=1.m, m<=10 и число q. Найти сумму вида (x(i)+y(j), наиболее близкую к числу q - C++
Даны два неубывающих массива X=(xi),i=1..n, n&lt;=10, и Y=(yi),i=1..m, m&lt;=10 и число q. Найти сумму вида (x(i)+y(j)), наиболее близкую к...

Не могу найти точку симметричную точке относительно прямой - C++
Найти точку симметричную точке А(-4;1) относительно прямой ВС 4х+3у-23=0

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

Структуры. Точки. Найти точку, которая наиболее удалена от начала координат - C++
Решить задачу, используя структуру point для хранения координат точки. Найти точку, которая наиболее удалена от начала координат. Множество...

Найти такую точку, что шар радиуса R с центром в этой точке содержит максимальное число точек зад - C++
Найти такую точку, что шар радиуса R с центром в этой точке содержит максимальное число точек заданного множества....

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

Массив: Найти точку из этого множества, которая являлась бы центром окружности с минимальным радиусом. - C++
Дано множество A из N точек с координатами (x,y). Найти точку из этого множества, которая являлась бы центром окружности с минимальным...

Найти такую точку заданного на плоскости множества точек, сумма расстояний от которой до остальных минимальна - C++
осталась последняя задача по Си, от неё зависит зачёт. Условия такие: найти такую точку заданного на плоскости множества точек, сумма...

Определить, какая из заданных точек расположена наиболее близко к указанной точке (динамические массивы) - C++
Даны натуральные числа n , p , q и действительные числа a1 , а2 , …, аn , причем n &gt;= q &gt; p &gt;=1. Определить, какая из точек (ap,aq) ,...

Найти точку D, симметричную точку A относительно стороны BC. - C++
помогите решить пожалуйста...

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

Найти значение функции в точке - C++
Найти значение функции ln⁡x в точке х (x∈(0;2]) c заданной точностью с помощью разложения в ряд: ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
jurok_85
241 / 224 / 77
Регистрация: 21.02.2013
Сообщений: 518
Завершенные тесты: 1
29.05.2014, 03:11     Найти точку из множества A, наиболее близкую к точке B #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
const int N = 20;
using namespace std;
 
struct tochka{
double x, y;
};
 
int main()
{
    srand(time(NULL));
   tochka A[N], b;
   b.x = rand()% 50; b.y = rand()% 50;
   cout << "Tochka B"  <<" ("<< b.x << ", " << b.y<< ")"<< endl << endl;
   for(int i = 0; i != N; i++)
   {
       A[i].x = rand()% 50;
       A[i].y = rand()% 50; cout << "Tochka " << i+1 <<" ("<< A[i].x << ", " << A[i].y<< ")"<< endl;
   }
   double min = sqrt(pow((A[0].x - b.x), 2) + pow((A[0].y - b.y), 2));
   double temp;
   int j = 0;
   for(int i = 1; i != N; i++)
   {
       temp = sqrt(pow((A[i].x - b.x), 2) + pow((A[i].y - b.y), 2));
       if(temp < min){
        min = temp;
        j = i;
       }
   }
   cout << "\nNaiblizajwaja tochka iz mnozestva A k tochke b -" << "Tochka " << j+1 <<" ("<< A[j].x << ", " << A[j].y<< ")"<< endl;
   return 0;
 
}
Ответ Создать тему
Опции темы

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