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

Минимальное число точек в описанном радиусе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ цикл while http://www.cyberforum.ru/cpp-beginners/thread105846.html
1. написать программу, вычисляющую сумму и среднее арифметическое последовательности положительных чисел , которые вводятся с клавиатуры 2. написать программу которая выводит на экран таблицу...
C++ Слияние двух динамических массивов… Приветствую Вас!:) Задача такая: Даны два массива: A и B (числовые), упорядоченные по неубыванию. Слить их в один упорядоченный по неубыванию массив за время O(m+n). Программа написана, но... http://www.cyberforum.ru/cpp-beginners/thread105835.html
Считывание информации из файлов форматов doc/xls/rtf C++
Доброго времени суток. У меня возник вопрос как сделать в С++ считывание информации из разных форматов файлов таких как DOC XLS RTF и тд. Подскажите пожалуйста как это сделать.
Как связать несколько output потоков? C++
Можно ли создать поток, который будет связан с несколькими потоками, что-бы при записи в него производиласт запись и во все связаные потоки. К примеру, в следующем коде хотелось-бы что-бы результат...
C++ работа с файлами в С/C++ http://www.cyberforum.ru/cpp-beginners/thread105800.html
Привет! Нужна помощь специалиста) Подскажите, пожалуйста, как из файла filename.txt, в котором содержится матрица из 1000 на 5, записать элементы в массивы M, M, M, M, M и с каждым из них потом...
C++ массивы Заданы две таблицы. Одна cодержит наименование услуг, а другая – расценки за эти услуги. Удалите из обеих таблиц все, что предшествует услуге, цена которой P рублей. Дан одномерный массив из 10... подробнее

Показать сообщение отдельно
Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
17.03.2010, 21:57
Сделал так, что если случилось так, что несколько точек имеют одинаковое минимальное количество точек входящих в окружность образованную заданным радиусом, то они будут все распечатаны.
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
63
//---------------------------------------------------------------------------
#include <conio.h>
#include <complex.h>
#include <iostream.h>
//---------------------------------------------------------------------------
typedef complex<double>Complex;
struct CPointMass
{
    Complex Point;
        int Mass;
};
int main(int argc, char* argv[])
{
    int PointsAmount;
        CPointMass * Points;
        double x,y, Radius;
        int i,j;
        cout << "Введите радиус: ";
        cin >> Radius;
        cout << "Введите кол-во точек: ";
        cin >> PointsAmount;
        if(!PointsAmount)
        return 0;
        Points = new CPointMass[PointsAmount];
        for(i=0;i<PointsAmount;i++)
        {
            cout << "Введите X"<<i<<" : ";
            cin>>x;
                cout << "Введите Y"<<i<<" : ";
            cin>>y;
                Points[i].Point=Complex(x,y);
                Points[i].Mass=0;
        }
        unsigned int MinMass=4294967295;       
        Complex ReqPoint;
        bool Founded=false;
        for(i=0;i<PointsAmount;i++)
        {
            for(j=0;j<PointsAmount;j++)
                {
                    if(abs(Points[i].Point-Points[j].Point)<Radius&&Points[i].Point!=Points[j].Point)
                            Points[i].Mass++;
 
                }
                if(Points[i].Mass<MinMass&&Points[i].Mass>0)
                {
                    ReqPoint=Points[i].Point;
                        MinMass=Points[i].Mass;
                        Founded=true;
                }
        }
        if(!Founded)
            cout<<"Ни одна точка не входит в окружность с заданным радиусом";
        else
            for(i=0;i<PointsAmount;i++)
                {
                    if(Points[i].Mass==MinMass)
                    printf("Найденная точка (x;y)=(%0.3f;%0.3f)\n",real(Points[i].Point),imag(Points[i].Point));
                }
        delete [] Points;
        getch();
}
//---------------------------------------------------------------------------
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru