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

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

Войти
Регистрация
Восстановить пароль
 
4ININ
2 / 2 / 0
Регистрация: 26.03.2012
Сообщений: 57
#1

Как правильно обьявить геометрические точки? - C++

06.10.2012, 01:09. Просмотров 418. Ответов 1
Метки нет (Все метки)

Здраствуйте!
Задача стоит такая : Добавить геометрическую точку с указанными координатами. (х у)
Отсортировать геометрические точки в сторону увеличения расстояния от начала координат.

Теперь основной вопрос : как правильно обьявить точку, для последующей сортировки ( по гипотенузе ), а также обращения к етой точке.
Дополнительный, необязательный вопрос : для дальнейшего удаления етой точки так : Удалить точку(либо точки) с указанными координатами (либо одной координатой).

вот мой приблизительный и кривой код :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
static int *numberOfPoint = 0; // переменная для указания номера точки
 
// Функция обьявления точек
    int Data::Point( int x, int y)
    {
        numberOfPoint++; 
        hypotenuse = sqrt((x*x)+(y*y));
// в первой ячейке даного масива будет храниться значение х, 
// во второй у, а в третей ячейке гипотенуза
        double arrayPoint[*numberOfPoint][*numberOfPoint][*numberOfPoint]; 
        cout<<numberOfPoint<<endl;
        cout<<"hypotenuse = "<<hypotenuse<<endl;
        return 0;
    }
как подсказывает здравый смысл если я правильно обьявлю массив
C++
1
double arrayPoint[numberOfPoint][*numberOfPoint][*numberOfPoint];
то при последующем обращении к нему я сойду с ума...

Также можете посмотреть вложеный файл... ето приблизительный набросок
Вложения
Тип файла: txt КривойКодПолностью.txt (5.9 Кб, 3 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.10.2012, 01:09     Как правильно обьявить геометрические точки?
Посмотрите здесь:

Как обьявить String в Visual Studio С++? C++
C++ Как обьявить глобальную переменную в функции?
Как обьявить указатель на двумерный массив? C++
C++ Как динамически обьявить многомерный массив (ptr = new int[5][5])?
Как обьявить переменную в одном классе и что бы ее было видно в дочернем классе C++
C++ Как обьявить и инициализировать массив константных значений?
Как найти координаты точки на прямой удаленной от заданной точки на х C++
C++ Как обьявить глобальную переменную
C++ Правильно ли с математической точки зрения программа на С++ вычислит значение выражения 5 / 2 * 1.3?
C++ Как обьявить массив неизвестного размера?
C++ Как правильно вписать функцию в h-файл и правильно её отразить в основной функции?
Как обьявить вектор векторов? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1242 / 991 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
06.10.2012, 01:27     Как правильно обьявить геометрические точки? #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
struct Point2D {
  double x, y;
  
  Point2D(double x_, double y_) : x(x_), y(y_) {}
  
  Point2D operator+(const Point2D &other)
  {
    return Point2D(x + other.x, y + other.y);
  }
  
  Point2D operator-(const Point2D &other)
  {
    return Point2D(x - other.x, y - other.y);
  }
  
  bool operator==(const Point2D &other)
  {
    return ((x == other.x) && (y == other.y));
  }
};
 
/* Длина радиус-вектора точки */
double abs(const Point2D &point)
{
  return sqrt(point.x * point.x + point.y * point.y);
}
Ну вы понели. Вам сравнивать точки по значению abs(). Надо несколько точек — std::vector<Point2D> в руки.
Yandex
Объявления
06.10.2012, 01:27     Как правильно обьявить геометрические точки?
Ответ Создать тему
Опции темы

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