Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Взаимно простые числа Два натуральных числа называются взаимно простыми, если их наибольший общий делитель равен единице. Для заданных чисел n , a и b определите количество чисел в интервале от a⋅n до b⋅n ,... Не нужно в NOD сравнивать числа! int gcd(int a, int b) { int tmp; while (1) { if (b==0) return a; tmp=a; https://www.cyberforum.ru/ cpp-beginners/ thread3095919.html C++ Вычислить среднее арифметическое объемов шаров
Вычислить среднее арифметическое объемов шаров с радиусами r1, r2, r3. Для нахождения объема шара использовать функцию. Ilxomjon, #include <iostream> #include <cmath> using namespace std; double get_volume(double radius) { return 4 * M_PI * pow(radius, 3) / 3; } int main()
C++ Проверить является ли введенная латинская буква гласной
Помогите, программа не работает, не знаю что делать, выдает ошибку в 5 строчке main.cpp #include <iostream> #include "mod.h" #include <string> using namespace std; int main() { #include <iostream> //#include <cctype> using namespace std; bool isVowel(char c) { char glasn="aeiouyAEIOUY"; for(int i=0;i<12;i++) if(c==glasn)return true; return false; }
C++ Проверка на пустоту массива https://www.cyberforum.ru/ cpp-beginners/ thread3095923.html
Программа работает, но точно ли происходит проверка на пустоту массива таким образом if (P != NULL) delete P; Непонятно, что такое проверка на пустоту. Массив не бывает пустым. Наверно, вы хотели проверить, выделена ли под массив память. Но так не проверишь. Да по-моему никак не провершь. Если вы возьмете...
C++ Определить периметры двух треугольников https://www.cyberforum.ru/ cpp-beginners/ thread3095976.html
Определить периметры двух треугольников, заданных координатами их вершин. Длину стороны треугольника вычислять в функции. Ilxomjon, расстояние между двумя точками на плоскости (длина стороны треугольника) вычисляется по формуле std::hypot(x1-x2, y1-y2). Периметр потом рассчитать не проблема.
C++ Сравнить 2 файла по содержимому. Вывод уникальных строк Есть 2 файла: в первом - список функций во втором - тоже список функций Сравнить первый файл - со вторым (но, не наоборот!!) на предмет - наличия новых (уникальных) функций во втором файле и... Вы хотите написать обязательно такую программу или вам нужен готовый метод (готовая программа) для сравнения? Если готовая , то Araxis Merge (при условии, что порядок одинаковых функций в файлах... https://www.cyberforum.ru/ cpp-beginners/ thread3095956.html
C++ Нужно перевести код на C++ в блок-схему #include <iostream> using namespace std; int main() { setlocale(LC_CTYPE, "ukr"); const int N = 50; int array = { 14, 65, 63, 1, 54, 89, 84, 9, 98, 57, 71, 18, 21, 84, 69, 29, 75,... https://www.cyberforum.ru/ cpp-beginners/ thread3095995.html Как изменить текст по нажатию SPACE? C++
и так, короче, хочу в c++ сделать подобие анимации, для этого нужно чтобы по нажатию "SPACE" текст из 1 строчки менялся, есть оба текста, нужно только понять как заменить его по нажатии:cry:, я тут... Такое? #include <windows.h> ... if(KEY == "SPACE") { system("cls"); // clear screen cout << "NewString" ;
C++ Курсовая (1 курс). Ошибка: ссылка на неразрешенную лексему Доброго времени суток! Не могу понять , где ошибка ссылка на неразрешенную лексему. Пишет, что есть 2 неразрешённых внешних элемента. Я так понимаю, что я не там описал "void vstavka", но что надо... Объявление void vstavka (char *obl) Вызов vstavka(june,june.obl); Ни о чем не говорит? https://www.cyberforum.ru/ cpp-beginners/ thread3095925.html C++ Рандомная вставка в матрицу https://www.cyberforum.ru/ cpp-beginners/ thread3095953.html
Как с помощью рандомайзера вставить любое число в рандомное место? #include <iostream> #include <iterator> #include <random> constexpr std::size_t n{4}; void printMatrix(int matrix) { for (int i = 0; i < n; i++) { std::copy(matrix, matrix+n,...
C++ Динамические двумерные массивы, переназначение указателя на исходный массив на новый массив
при решении задачи необходимо обеспечить перераспределение динамической памяти под массив нового размера и перенаправить адрес исходного массива на полученный блок данных. пользоваться можно ТОЛЬКО... int cnt = 0; float* arr2 = new float; создаётся массив нулевой длины.
C++ Нужно разобраться как работает код. Игра крестики нолики в консоли https://www.cyberforum.ru/ cpp-beginners/ thread3095875.html
Помогите пожалуйста разобраться как работает код. Нужно разобраться как работают сами процедуры. Например как проверяется окончание игры, как выводится поле, как работает ввод координат. #include... как проверяется окончание игры if (chekWin(field, Name1, Name2)) как выводится поле output(field); как работает ввод координат cin >> answer; Как то так. КО.
 Аватар для Morhuhan
0 / 0 / 0
Регистрация: 27.10.2020
Сообщений: 30
07.04.2023, 17:12  [ТС] 0

Слияние выпуклых оболочек - C++ - Ответ 16848130

07.04.2023, 17:12. Показов 706. Ответов 6
Метки (Все метки)

Ответ

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

Выпуклая оболочка множества точек — такое выпуклое множество точек, что все точки фигуры также лежат в нем.

Минимальная выпуклая оболочка множества точек — это минимальная по площади выпуклая оболочка.

в данной программе я работаю именно с минимальными выпуклыми оболочками, которые я получаю с помощью метода Грахама.

Выпуклую оболочку реализует класс ConvexHull

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
class ConvexHull {
public:
 
    // Конструктор, принимающий массив точек и его размер
    ConvexHull(point* points, int size) {
        _size = size;
        _points = new point[size];
        for (int i = 0; i < size; i++) {
            _points[i] = point(points[i].x, points[i].y); // глубокое копирование
        }
    }
 
    // Конструктор по умолчанию
    ConvexHull() {
        _size=0;
        _points = nullptr;
    }
 
    // Метод для получения массива точек
    point* getPoints() const {
        return _points;
    }
 
    // Метод для получения размера массива точек
    int getSize() const {
        return _size;
    }
 
    void print_hull() {
        for (int i = 0; i < _size; i++) {
            printf("%f %f\n", _points[i].x, _points[i].y);
        }
    }
 
    void print_in_file(const char* filename) {
 
        ofstream outfile(filename);
 
        for (int i = 0; i < _size; i++) {
            outfile << _points[i].x << " " << _points[i].y << endl;
        }
    }
 
private:
 
    point* _points; // Указатель на массив точек
    int _size; // Размер массива точек
};


Вернуться к обсуждению:
Слияние выпуклых оболочек C++
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.04.2023, 17:12
Готовые ответы и решения:

Построение минимальных выпуклых оболочек
За дня два...в субботу защита, нужно еще оформить мне все. Нужно всего хотя бы два алгоритма! Любых!) в консольном приложении....очень...

Построение минимальных выпуклых оболочек, алгоритм Грэхема
Построение минимальных выпуклых оболочек. алгоритма Грэхема подскажите где ошибка. import _random def rotate(A,B,C): return...

Простое слияние, естественное слияние, многофазная сортировка
Дан текстовый файл, в котором записана последовательность целых чисел. написать программу сортировки с помощью алгоритмов внешней...

6
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.04.2023, 17:12
Помогаю со студенческими работами здесь

Пересечение линейных оболочек
Кто нибудь подскажет как найти пересечение линейных оболочек векторов е1= (1,0,1,2) е2=(0,1,1,0) и u1=(1,-1,0,2) u2=(0,1,0,1) ...

Найти базисы линейных оболочек
Приветствую, необходимо решить задачу следующего вида: Пусть L и M - линейные оболочки столбцов матриц A и B соответственно ...

Производительность BASH и подобных оболочек
Доброго времени суток уважаемые! Недавно встала необходимость написать пару дюжин скриптов обработки вывода программ (Linux). Иначе...

Сравнение данных оболочек базовых типов
Добрый день! Потихоньку занимаюсь изучением Java и натыкаюсь на некоторые странности. Не могли бы вы мне объяснит следующий момент. ...

Окно выбора оболочек показывает пустой список
Доброго времени суток! Установил ubuntu 16.04 LTS, поверх нее оболочку gnome3, все прошло успешно, но после перезагрузки список выбора...

0
Новые блоги и статьи
Vue 3: Создаем современное веб-приложение с Composition API
Reangularity 14.03.2025
В фронтенд-разработке Vue 3 выделяется своим прагматичным подходом. В отличие от React с его минималистичной философией "всё — JavaScript" или Angular с его всеобъемлющим корпоративным подходом, Vue. . .
Разработка контекстных меню в iOS
mobDevWorks 14.03.2025
С приходом iOS 13 Apple представила новый API для контекстных меню, который полностью заменил предыдущую технологию 3D Touch peek & pop. Хотя многие разработчики и пользователи испытывают ностальгию. . .
Лучшие практики оптимизации Docker Image
Mr. Docker 13.03.2025
Размер Docker-образа влияет на множество аспектов работы с контейнерами. Чем больше образ, тем дольше его загрузка в реестр и выгрузка из него. Для команд разработки, работающих с CI/ CD пайплайнами,. . .
Вопросы на собеседовании по Docker
Mr. Docker 13.03.2025
Ты сидишь напротив технического специалиста, и вдруг звучит вопрос про Docker Swarm или многоэтапные сборки. Пот на лбу? Не переживай, после этой статьи ты будешь готов ко всему! Эта статья будет. . .
Поиск текста в сносках : замена дефиса на тире или тире на дефис...
РоΜа 13.03.2025
Нужно было найти текст в сносках и заменить. Почему-то метод селекшн не сработал. . . пришлось гуглить. найденный на форумвба код пришлось править. Смысл - заменяет в сносках дефисы и тире на нужные. . . .
Real PATH definitions in bash scripts
jigi33 13.03.2025
Как поймать путь и путь к директории относительно запускаемого файла в BASH 1. поймать путь через вывод $(pwd) 2. более правильно - на основе realpath (см. скриншот)
Django или Flask: что выбрать для веб-разработки на Python
py-thonny 13.03.2025
Django – это высокоуровневый фреймворк, который придерживается философии "всё включено". Он предоставляет разработчику готовые решения для большинства типичных задач веб-разработки: от аутентификации. . .
Непрерывное развертывание в Java с Kubernetes
Javaican 13.03.2025
Чем так привлекателен Kubernetes для развертывания Java-приложений? Этот оркестратор контейнеров позволяет автоматизировать развертывание, масштабирование и управление контейнеризированными. . .
Предотвращение XSS, CSRF и SQL-инъекций в JavaScript
run.dev 13.03.2025
JavaScript занимает первые позиции среди языков веб-разработки, но его распространенность делает его привлекательной целью для злоумышленников. Межсайтовый скриптинг (XSS), межсайтовая подделка. . .
PHP 8: JIT-компиляция и улучшение производительно­сти
Jason-Webb 13.03.2025
PHP никогда не славился своей скоростью. Многие сталкивались с проблемами производительности при работе со сложными вычислениями или обработкой больших объемов данных. Традиционная модель выполнения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru