Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
nas
0 / 0 / 1
Регистрация: 10.11.2010
Сообщений: 26
1

Квадрат наибольшего периметра

25.11.2010, 17:48. Просмотров 1636. Ответов 7
Метки нет (Все метки)

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

Подкиньте пожалуйста идею, как определить образуют ли данные четыре точки квадрат, ну и вообще у кого какие идеи по этой задаче
Заранее благодарю!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2010, 17:48
Ответы с готовыми решениями:

Квадрат наибольшего периметра
Вот эту задачу не могу реализовать. Задано множество (n) точек на плоскости,...

Найти квадрат наибольшего периметра
Задано множество точек на плоскости.Выбрать из них 4 разные точки, которые...

Треугольник наибольшего периметра
Друзья, никак не могу осилить задачку, заранее благодарю!) Найти три...

Выбрать 3 точки множества, составляющих треугольник наибольшего периметра
Выбрать 3 различные точки заданного на плоскости множества точек,составляющих...

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

7
nas
0 / 0 / 1
Регистрация: 10.11.2010
Сообщений: 26
28.11.2010, 08:58  [ТС] 2
Подскажите пожалуйста, правильно ли я думаю:

Нужно сначала организовать четыре цикла. Затем по координатам точек смотреть перпендикулярность сторон, а потом уже находить длину???

Или можно проще алгоритм придумать???
0
accept
4833 / 3255 / 455
Регистрация: 10.12.2008
Сообщений: 10,569
28.11.2010, 09:14 3
Цитата Сообщение от nas
Нужно сначала организовать четыре цикла.
это в самом конце

сначала нужно написать функции, одна находит расстояние между точками, другая проверяет четыре точки на вершины квадрата, а уже потом дальнейшее

1. находим самое большое расстояние между двумя точками
2. пытаемся найти ещё три таких же расстояния
3. если нет трёх таких же расстояний, находим расстояние поменьше, к пункту 2
4. если нашли все расстояния, проверяем точки на вершины квадрата
5. если это вершины квадрата, выводим
0
valeriikozlov
Эксперт С++
4687 / 2513 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
28.11.2010, 09:27 4
accept, Алгоритм отличный. Чуть-чуть добавлю в алгоритм своего (для ускорения по времени):
Цитата Сообщение от accept Посмотреть сообщение
2. пытаемся найти ещё три таких же расстояния
лучше так:
2. пытаемся найти ещё 2 таких же расстояния, причем 2 этих расстояния - с участием двух точек из п.1 (и здесь появляются новые 2 точки), а одно расстояние между новыми двумя точками просто проверяем на ту же длинну.
0
nas
0 / 0 / 1
Регистрация: 10.11.2010
Сообщений: 26
29.11.2010, 12:08  [ТС] 5
Не знаю как проверить точки на вершины квадрата. Подскажите пожалуйста
0
valeriikozlov
Эксперт С++
4687 / 2513 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
29.11.2010, 12:20 6
nas, Напишите в личку.
1
accept
4833 / 3255 / 455
Регистрация: 10.12.2008
Сообщений: 10,569
30.11.2010, 02:12 7
чтобы определить являются ли точки вершинами квадрата, нужно узнать расстояния между ними и проверить а корней из двух, или сумма квадратов катетов равна квадрату гипотенузы
в общем нужно удостовериться, что угол прямой

а ещё можно проверить стороны на равенство и диагонали на равенство
1
nas
0 / 0 / 1
Регистрация: 10.11.2010
Сообщений: 26
30.11.2010, 17:47  [ТС] 8
Спасибо большое
0
30.11.2010, 17:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2010, 17:47

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

Из заданного на плоскости множества точек выбрать такие три, которые составляют треугольник наибольшего периметра.
Помогите ребят!!!!препод задачи задачи для аттестации,сделал фактически...

Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра
Задание, как множество точек вывести на экран понял. #include <iostream>...


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

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

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