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

Поиск точек на плоскости - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перенос строк по символу http://www.cyberforum.ru/cpp-beginners/thread799465.html
Нужно написать программу, которая ищет в введенном тексте все символы '?', удаляет их и ставит после каждого из них перенос строки Удаление символов реализовал в одну строку, но с переносом что-то...
C++ Координаты точек на выпуклой оболочке Привет всем. Помогите пожалуйста с задачей :) В общем, есть множество точек на плоскости, и надо найти точки (и, соответственно, их координаты), которые будут находиться на выпуклой оболочке. http://www.cyberforum.ru/cpp-beginners/thread799455.html
C++ Соотношение Безу, как работает программа
Добрый день! Прошу вашей помощи! Объясните мне, как работает программа %-) int main() { int a, b, p=1, q=0, r=0, s=1, k, x, y; cin >> a >> b;
Динамический массив. Подсчитать, сколько различных видов товаров было привезено на состав этого дня C++
Недавно начал учить массивы и не могу до конца разобраться с динамическими массивами. Нужно реализовать задачу, в которой неизвестно заранее количество элементов массива. Можно ли ее как-то...
C++ Разработка многопользовательского графического чата http://www.cyberforum.ru/cpp-beginners/thread799445.html
Разработка многопользовательского графического чата Общение: при помощи прямолинейных линий, создаваемых курсором мыши. Особенность: добавить авторизацию пользователей. Данные передавать в...
C++ Как созать цикл for для нахождения произведения элементов массива Вот к примеру для нахождения суммы необходимо так: for (i=0, sum=0; i<n; i++ ) sum+=m; А вот как для нахождения произведения у меня что-то не получается! подробнее

Показать сообщение отдельно
booker
23 / 23 / 2
Регистрация: 21.11.2012
Сообщений: 106
04.03.2013, 22:05
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <math.h>
#include <vector>
#include<time.h>
 
 
class point
{
public:
    point():x(0),y(0){};
    point( int x, int y ) : x(x), y(y) {}
    int getx() const { return x; }
    int gety() const { return y; }
    double distance (point *q) {
        return sqrt( (double)( (x-q->x)*(x-q->x) + (y-q->y)*(y-q->y) ) ); 
    };
    //почему бы и нет
    friend double distance (point *one,point *two){
    return sqrt( (double)( pow((double)(one->x-two->x),2) + pow((double)(one->y-two->y),2)) );
    };
 
 
private: 
    const int x;
    const int y;
};
 
int main(  )
{
    point one(0,0);
    point two(3,4);
 
    std::cout<<distance(&one,&two)<<std::endl; // ведь такой синтаксис может быть удобен 
        
    srand(static_cast<unsigned>(time(NULL)));
            
    std::vector<point>points;
 
    for(int n=0;n<100;n++){
 
        points.push_back(point(rand()%100,rand()%100));
    }
 
 
    std::vector<point>::iterator iter1=points.begin();
    std::vector<point>::iterator iter2=points.begin()+1;
 
    double min= distance(iter1,iter2);
    double max= distance(iter1,iter2);
 
    for (iter1=points.begin();iter1!=points.end();iter1++)
    {
        for (iter2=iter1+1;iter2!=points.end();iter2++){
            if(distance(iter1,iter2)<min)min=distance(iter1,iter2);
                    if(distance(iter1,iter2)>max)max=distance(iter1,iter2);
        }
    }
        
    std::cout<<min<<" "<<max;
            
    system("PAUSE");
}
Добавлено через 1 минуту
вывод смущает, наверное опять в чём то не прав(
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru