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

прямоугольник - C++

Восстановить пароль Регистрация
 
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 16:29     прямоугольник #1
помогие с решением . Найти параметры минимального по площади прямоугольника со сторонами, параллельными осям. Прямоугольник должен охватывать все точки из заданного на плоскости множества.
на с++
зарание спс!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2010, 16:29     прямоугольник
Посмотрите здесь:

C++ Нарисовать прямоугольник
класс прямоугольник. C++
C++ класс - прямоугольник
Прямоугольник C++
3D прямоугольник C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 16:34     прямоугольник #2
ищещь в заданном множестве точек масимальное и минимальное значение для координаты Х и У. твой прямоугольник будет такой {1(Хmin, Ymin), 2(Хmin, Ymax), 3(Хmax, Ymax), 4(Хmax, Ymin) }
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 16:38  [ТС]     прямоугольник #3
а тело программы сможеш написать, просто я в програмировании дуд-дерево!?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 17:00     прямоугольник #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
35
36
37
38
39
40
41
42
43
44
#include <iostream>
 
 
using namespace std;
 
struct COORD 
{
    int x;
    int y;
};
 
int main()
{
  const int n = 7;
    COORD arr[7]={ 
        {0, 1}, 
        {-1, 1}, 
        {2, 1}, 
        {7, 1}, 
        {0, 4}, 
        {-1, 1}, 
        {0, 2} 
    };
 
    int  xMax=arr[0].x, yMax=arr[0].y, xMin=arr[0].x, yMin=arr[0].y;
 
    for (int i=1; i<7; i++)
    {
        if(arr[i].x>xMax) xMax=arr[i].x;
        else
            if(arr[i].x<xMin) xMin=arr[i].x;
 
        if(arr[i].y>yMax) yMax=arr[i].y;
        else
            if(arr[i].y<yMin) yMin=arr[i].y;
    }
 
    cout<<"rectangle: ("<<xMin<<","<<yMin<<"), ("
        <<xMin<<","<<yMax<<"), ("
        <<xMax<<","<<yMax<<"), ("
        <<xMax<<","<<yMin<<")"<<endl;
    system("pause");
    return 0;
}
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 17:16  [ТС]     прямоугольник #5
а как она работает?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 17:17     прямоугольник #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от FREEMEN Посмотреть сообщение
а как она работает?
COORD arr[7]={
{0, 1},
{-1, 1},
{2, 1},
{7, 1},
{0, 4},
{-1, 1},
{0, 2}
};
из этого массива пар Х и У берёт значения и ищет из них максимальные и минимальные и строит по найденным точкам вершины прямоугольника
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 17:18  [ТС]     прямоугольник #7
это вся ее работа?
Миниатюры
прямоугольник  
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 17:19  [ТС]     прямоугольник #8
а почему именно из этого массива?
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 17:31     прямоугольник #9
Цитата Сообщение от FREEMEN Посмотреть сообщение
а почему именно из этого массива?
потому что с клавы вводит долго и не приятно, с файлом замарачиваться не стал,
выбор варинта ввода за тобой

программа выводит вершины прямоугольника, есть ещё способы обозначить сию фигуры? графическое приложение делать совсем как-то не хотелось
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 17:41  [ТС]     прямоугольник #10
а с клавы как можеш написать ? пожалуйста!
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 17:57     прямоугольник #11
в последний раз
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
38
39
40
41
42
43
44
#include <iostream>
 
using namespace std;
 
struct COORD 
{
    int x;
    int y;
};
 
int main()
{
    int n;
 
    cout<<"Enter number point: "; cin>>n;
    COORD * arr = new COORD[n];
 
    for (int i=0; i<n; i++)
    {
        cout<<"point: "<<i+1<<endl; 
        cout<<"Enter X: "; cin>>arr[i].x;
        cout<<"Enter Y: "; cin>>arr[i].y;
    }
 
    int  xMax=arr[0].x, yMax=arr[0].y, xMin=arr[0].x, yMin=arr[0].y;
 
    for (int i=1; i<n; i++)
    {
        if(arr[i].x>xMax) xMax=arr[i].x;
        else
            if(arr[i].x<xMin) xMin=arr[i].x;
 
        if(arr[i].y>yMax) yMax=arr[i].y;
        else
            if(arr[i].y<yMin) yMin=arr[i].y;
    }
 
    cout<<"rectangle: ("<<xMin<<","<<yMin<<"), ("
        <<xMin<<","<<yMax<<"), ("
        <<xMax<<","<<yMax<<"), ("
        <<xMax<<","<<yMin<<")"<<endl;
    system("pause");
    return 0;
}
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 18:01  [ТС]     прямоугольник #12
она не выводит сообщение о том что надо ввести икс и игрик!
TanT
эволюционирую потихоньку
 Аватар для TanT
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
14.01.2010, 18:17     прямоугольник #13
Цитата Сообщение от FREEMEN Посмотреть сообщение
она не выводит сообщение о том что надо ввести икс и игрик!
как?
введи количество точек. а потом для каждой точки вводи Х и У
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2010, 18:27     прямоугольник
Еще ссылки по теме:

C++ нарисовать прямоугольник
Прямоугольник C++
C++ Задача прямоугольник

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

Или воспользуйтесь поиском по форуму:
FREEMEN
 Аватар для FREEMEN
2 / 2 / 0
Регистрация: 09.01.2010
Сообщений: 47
14.01.2010, 18:27  [ТС]     прямоугольник #14
спс! работает!!!
Yandex
Объявления
14.01.2010, 18:27     прямоугольник
Ответ Создать тему
Опции темы

Текущее время: 18:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru