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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
Adrian
0 / 0 / 0
Регистрация: 05.01.2009
Сообщений: 23
#1

Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости - C++

05.01.2009, 16:34. Просмотров 1765. Ответов 7
Метки нет (Все метки)

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

з.ы. буду очень благодарен если откликнитесь...если можно хотя бы какую нибудь литературу посоветуйте...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2009, 16:34     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости
Посмотрите здесь:
C++ Найти максимальный вес картошки, который можно унести в рюкзаке
C++ Среди заданных точек на плоскости найти ту, у которой расстояние суммы равно наибольшему от остальных точек
Класс "Выпуклый четырехугольник" C++
Найти из двух точек на плоскости ближайшую к заданной точке C++
C++ Заданное множество точек на плоскости. Найти выпуклую оболочку этого множества
На плоскости заданы своими целочисленными координатоми n точек. Найти все возможные группы... C++
В массивах вещественных чисел X и Y записаны координаты точек на плоскости. Найти длины отрезков C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6477 / 2252 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
05.01.2009, 16:35     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #2
А для чего нам неопределенное количество точек, если у нас уже известно, что четырехугольник?
Adrian
0 / 0 / 0
Регистрация: 05.01.2009
Сообщений: 23
05.01.2009, 17:16  [ТС]     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #3
задача ставиться следующим образом :
задаются точки .допустим
а(1.3)
б(3.6)
с(1.6)
д(7.5)
е(8.3)

из этих точек можно организовать 4 четырехугольника:
абсд, аесд, абед, бсде

из этих четырехугольников нужно отобрать только те , которые являються выпуклыми

и далее задача сводиться к тому чтобы найти максимальный по площади четырехугольник
bmw666
9 / 7 / 1
Регистрация: 25.12.2008
Сообщений: 40
07.01.2009, 07:06     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #4
Это совсем не сложно но долго.
сначала описываешь функцию для вычисления гипотенузы. Она понадобится для расчета расстояния между точками.
потом вызываешь эту функцию для каждой из пар точек.
после общитываешь себе площадь комбинаций этих отрезков. Вроде все.
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
 
double Distance(int, int, int, int);
int main()
{
    int Points[2][5];
    double ab, ae, bc, be, cd, da, ea;
    for(int i=0; i<5; i++)//
    {
            cout << "Enter " << i+1 << " point:\nX: ";
            cin >> Points[0][i];
            cout << "Y: ";
            cin >> Points[1][i];
    }
    ab=Distance(Points[0][0], Points[1][0], Points[0][1], Points[1][1]);
    ae=Distance(Points[0][0], Points[1][0], Points[0][4], Points[1][4]);
    bc=Distance(Points[0][1], Points[1][1], Points[0][2], Points[1][2]);
    be=Distance(Points[0][1], Points[1][1], Points[0][4], Points[1][4]);
    cd=Distance(Points[0][2], Points[1][2], Points[0][3], Points[1][3]);
    da=Distance(Points[0][3], Points[1][3], Points[0][0], Points[1][0]);
    ea=Distance(Points[0][4], Points[1][4], Points[0][0], Points[1][0]);
    //...ГІГіГІ ìîæГ*Г® ïåðåáðГ*ГІГј ГўГ±ГҐ ñëó÷Г*ГЁ Г*Г® Гі ГІГҐГЎГї Г*Г*ГЇГЁГ±Г*Г*Г® Г·ГІГ® òîëüêî ГІГ*ГЄГЁГҐ.
    cout <<ab<<" "<<ae<<" "<<bc<<" "<<be<<" "<<cd<<" "<<da<<" "<<ea<< endl;
    getch();
    //...Г* Г¤Г*ëüøå Г±Г*Г¬ óæå ГЁГ№ГЁ ïëîùГ*äü.
}
double Distance(int Fx, int Fy, int Sx, int Sy)
{
    double res;
    res=sqrt(pow(Fx-Sx, 2)+pow(Fy-Sy, 2));
    return res;
}
Добавлено через 6 минут 35 секунд
В общем там остается только из сторон найти площадь.
Adrian
0 / 0 / 0
Регистрация: 05.01.2009
Сообщений: 23
07.01.2009, 10:44  [ТС]     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #5
ab=Distance(Points[0][0], Points[1][0], Points[0][1], Points[1][1]) а что эта функция делает? и вообще что то не совсем понял что за цифры после задания точек выводятся...обьясни пожалуйста, если не сложно..
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
07.01.2009, 12:08     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #6
Цитата Сообщение от bmw666 Посмотреть сообщение
сначала описываешь функцию для вычисления гипотенузы
Гипотенуза - это сторона в прямоугольных треугольниках. а тут речь идут о выпуклых четырех угольниках. Т.е. не факт, что выбранные четыре точки организуют прямоугольник.
Adrian
0 / 0 / 0
Регистрация: 05.01.2009
Сообщений: 23
07.01.2009, 12:42  [ТС]     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #7
наверно не гипотинузы а диогонали...если найти диогональ но можно легко разбить четырехугольник на 2 треугольника
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2009, 16:43     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости
Еще ссылки по теме:
C++ Дано множество точек на плоскости. Необходимо найти 4 точки (с максимальными и минимальными значениями x и y)
C++ Найти точку на плоскости, сумма расстояний от которой до остальных точек множества максимальна
C++ Найдите максимальный вес золота, который можно унести в рюкзаке вместительностью S, если есть N золотых слитко
найти две наиболее удаленных друг от друга точки (множество точек задано на плоскости) C++
Найти такую точку заданного на плоскости множества точек, сумма расстояний от которой до остальных минимальна C++

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

Или воспользуйтесь поиском по форуму:
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
07.01.2009, 16:43     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости #8
Да тут ного вариантов решения, самое главное найти наиболее оптимальный!
Yandex
Объявления
07.01.2009, 16:43     Найти максимальный по площади выпуклый четырехугольник, который можно организовать из точек на плоскости
Ответ Создать тему
Опции темы

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