Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/21: Рейтинг темы: голосов - 21, средняя оценка - 4.76
 Аватар для Andrey1997
-1 / 2 / 0
Регистрация: 03.10.2015
Сообщений: 67
1

Определить наиболее близкие из точек координаты которых записаны в двумерный массив

18.10.2015, 17:31. Показов 3843. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано натуральное число n. С помощью двумерного действительного числового массива [xij]i=1,2; j=1,...,n на плоскости задано n точек так, что x1j, x2j – координаты j-й точки. Какие из этих точек две точки являются наиболее близкими?

Добавлено через 5 часов 8 минут
help
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2015, 17:31
Ответы с готовыми решениями:

Задан двумерный массив, в котором хранятся координаты точек,Определить число точек лежащих в N-ой четверти
Задан двумерный массив, в котором хранятся координаты точек, лежащих на плоскости (х – первая строка массива, y – вторая строка)....

В файле записано количество точек на плоскости и их координаты.Поместить эти координаты в двумерный динамический массив
В файле записано количество точек на плоскости и их координаты. Поместить эти координаты в двумерный динамический массив. Найти две точки,...

Определить в целочисленном векторе два элемента, наиболее близкие к среднему арифметическому всех элементов
Используя подпрограммы, определить в целочисленном векторе vectorn два элемента, наиболее близкие к среднему арифметическому всех элементов...

4
Модератор
Эксперт С++
 Аватар для zss
13735 / 10931 / 6483
Регистрация: 18.12.2011
Сообщений: 29,172
18.10.2015, 19:51 2
C++ Скопировано
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int j1min=0,j2min=1;
double distmin=(x[0][0]-x[0][1])*(x[0][0]-x[0][1])+(x[1][0]-x[1][1])*(x[1][0]-x[1][1]);
for(int j1=0;j1<n-1;j1++)
  for(int j2=j1+1;j2<n;j2++)
  {
      double dist=(x[0][j1]-x[0][j2])*(x[0][j1]-x[0][j2])+(x[1][j1]-x[1][j2])*(x[1][j1]-x[1][j2]);
      if(dist<distmin)
      {
            j1min=j1;
            j2min=j2;
            distmin=dist;
      }
  }
cout<<"1 point "<<x[0][j1min]<<','<<x[1][j1min]<<endl;
cout<<"2 point "<<x[0][j2min]<<','<<x[1][j2min]<<endl;
cout<<"distance="<<sqrt(distmin)<<endl;
0
 Аватар для Andrey1997
-1 / 2 / 0
Регистрация: 03.10.2015
Сообщений: 67
18.10.2015, 20:29  [ТС] 3
zss, выдает кучу ошибок

Добавлено через 6 минут
В чем проблема?
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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    int j1min = 0, j2min = 1;
    double distmin = (x[0][0] - x[0][1])*(x[0][0] - x[0][1]) + (x[1][0] - x[1][1])*(x[1][0] - x[1][1]);
    for (int j1 = 0; j1<n - 1; j1++)
        for (int j2 = j1 + 1; j2<n; j2++)
        {
            double dist = (x[0][j1] - x[0][j2])*(x[0][j1] - x[0][j2]) + (x[1][j1] - x[1][j2])*(x[1][j1] - x[1][j2]);
            if (dist<distmin)
            {
                j1min = j1;
                j2min = j2;
                distmin = dist;
            }
        }
    cout << "1 point " << x[0][j1min] << ',' << x[1][j1min] << endl;
    cout << "2 point " << x[0][j2min] << ',' << x[1][j2min] << endl;
    cout << "distance=" << sqrt(distmin) << endl;
system("pause");
    return 0;
}
0
Модератор
Эксперт С++
 Аватар для zss
13735 / 10931 / 6483
Регистрация: 18.12.2011
Сообщений: 29,172
18.10.2015, 21:09 4
Лучший ответ Сообщение было отмечено Andrey1997 как решение

Решение

Например так
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
#include <iostream>
#include <cmath>
using namespace std;
 
int main()
{
    int j1min = 0, j2min = 1;
    const int n=4;
    double x[2][n]={ {1.,-5.4,2.,99.9},{-1.4,-0.4,-2.9,-99.9} };
    double distmin = (x[0][0] - x[0][1])*(x[0][0] - x[0][1]) + (x[1][0] - x[1][1])*(x[1][0] - x[1][1]);
    for (int j1 = 0; j1<n - 1; j1++)
        for (int j2 = j1 + 1; j2<n; j2++)
        {
            double dist = (x[0][j1] - x[0][j2])*(x[0][j1] - x[0][j2]) + (x[1][j1] - x[1][j2])*(x[1][j1] - x[1][j2]);
            if (dist<distmin)
            {
                j1min = j1;
                j2min = j2;
                distmin = dist;
            }
        }
    cout << "1 point " << x[0][j1min] << ',' << x[1][j1min] << endl;
    cout << "2 point " << x[0][j2min] << ',' << x[1][j2min] << endl;
    cout << "distance=" << sqrt(distmin) << endl;
    system("pause");
    return 0;
}
1
 Аватар для Andrey1997
-1 / 2 / 0
Регистрация: 03.10.2015
Сообщений: 67
18.10.2015, 22:13  [ТС] 5
zss, спасибо !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.10.2015, 22:13
Помогаю со студенческими работами здесь

Определить расстояния от диафрагмы до трех наиболее удаленных от нее точек,в которых наблюдаются минимумы интенсивности
Плоская световая волна =0,7 мкм падает нормально на диафрагму с круглым отверстием радиусом r=1,4 мм.Определить расстояния b1,b2,b3 от...

В массивах вещественных чисел X и Y записаны координаты точек на плоскости. Найти длины отрезков
Помогите написать программу. В массивах вещественных чисел X и Y записаны координаты точек на плоскости. Найти длины отрезков и...

Двумерный массив.Как определить координаты элемента.
Есть двумерный массив arr.Я представил его в виде поля: 1 | 2 | 3 --+--+--- 4 | 5 | 6 --+--+--- 7 | 8 | 9 Мне...

Найти номера и координаты точек, наиболее удаленных друг от друга
Здравствуйте, кто может помогите с задачами: 1.Задано N точек своими координатами. Найти номера и координаты точек, наиболее удаленных...

Вывести 2 координаты, которые располагаются наиболее близко в массиве точек
Доброго времени суток! Помогите пожалуйста с задачкой: Дан динамический массив точек,необходимо вывести 2 координаты,которые...


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

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

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Создание и использование компонентов в Vue 3
Reangularity 14.03.2025
Компонент в Vue - это автономный блок интерфейса, который содержит собственную разметку, логику и стили. Представьте себе кнопку, форму ввода или даже целую панель навигации - всё это можно оформить. . .
Vue 3: Создаем современное веб-приложение с Composition API
Reangularity 14.03.2025
В фронтенд-разработке Vue 3 выделяется своим прагматичным подходом. В отличие от React с его минималистичной философией "всё — JavaScript" или Angular с его всеобъемлющим корпоративным подходом, Vue. . .
Разработка контекстных меню в iOS
mobDevWorks 14.03.2025
С приходом iOS 13 Apple представила новый API для контекстных меню, который полностью заменил предыдущую технологию 3D Touch peek & pop. Хотя многие разработчики и пользователи испытывают ностальгию. . .
Лучшие практики оптимизации Docker Image
Mr. Docker 13.03.2025
Размер Docker-образа влияет на множество аспектов работы с контейнерами. Чем больше образ, тем дольше его загрузка в реестр и выгрузка из него. Для команд разработки, работающих с CI/ CD пайплайнами,. . .
Вопросы на собеседовании по Docker
Mr. Docker 13.03.2025
Ты сидишь напротив технического специалиста, и вдруг звучит вопрос про Docker Swarm или многоэтапные сборки. Пот на лбу? Не переживай, после этой статьи ты будешь готов ко всему! Эта статья будет. . .
Поиск текста в сносках : замена дефиса на тире или тире на дефис...
РоΜа 13.03.2025
Нужно было найти текст в сносках и заменить. Почему-то метод селекшн не сработал. . . пришлось гуглить. найденный на форумвба код пришлось править. Смысл - заменяет в сносках дефисы и тире на нужные. . . .
Real PATH definitions in bash scripts
jigi33 13.03.2025
Как поймать путь и путь к директории относительно запускаемого файла в BASH 1. поймать путь через вывод $(pwd) 2. более правильно - на основе realpath (см. скриншот)
Django или Flask: что выбрать для веб-разработки на Python
py-thonny 13.03.2025
Django – это высокоуровневый фреймворк, который придерживается философии "всё включено". Он предоставляет разработчику готовые решения для большинства типичных задач веб-разработки: от аутентификации. . .
Непрерывное развертывание в Java с Kubernetes
Javaican 13.03.2025
Чем так привлекателен Kubernetes для развертывания Java-приложений? Этот оркестратор контейнеров позволяет автоматизировать развертывание, масштабирование и управление контейнеризированными. . .
Предотвращение XSS, CSRF и SQL-инъекций в JavaScript
run.dev 13.03.2025
JavaScript занимает первые позиции среди языков веб-разработки, но его распространенность делает его привлекательной целью для злоумышленников. Межсайтовый скриптинг (XSS), межсайтовая подделка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер