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

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

Войти
Регистрация
Восстановить пароль
 
ronny137
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 61
#1

пересекающиеся прямоугольники - C++

17.05.2011, 19:07. Просмотров 627. Ответов 0
Метки нет (Все метки)

В каждой строчке входного файле заданы координаты левого нижнего угла и координаты правого верхнего угла прямоугольника на плоскости (для отделения одних элементов от других может использоваться произвольное число пробелов), например:
#1 (1, 2) ( 4, 3 )
#4 (2, 5) ( 3, 8 )
#2( 0, 4) (5,6)
#7 (3, 0) (5, 2)
Символ «#» начинает запись об очередном прямоугольнике. Далее следует номер прямоугольника (положительное целое число, номер должен быть уникален, номера не обязательно образуют ряд последовательных значений). Далее задаются координаты пары точек.
Стороны прямоугольников параллельны осям координат. Общая задача состоит в нахождении всех пар пересекающихся прямоугольников (считать прямоугольники пересекающимися, если они имеют хотя бы одну общую точку). В выходной файл должны быть выведены номера прямоугольников для каждой такой пары, например:
#1 пересекается с #7
#4 пересекается с #2
Если пересекающихся прямоугольников нет, сообщить об этом.
В решении должны появиться следующие классы: Класс Point для представления точки на плоскости и операций над точками. Класс Rectangle для представления прямоугольника и операций над ним, например, класс должен содержать метод, проверяющий, пересекается ли данный прямоугольник с другим. Класс RectangleArray для представления массива прямоугольников и реализации основных операций. В частности, при добавлении прямоугольника в массив, должна осуществляться проверка, не совпадает ли номер прямоугольника с номерами ранее введенных прямоугольников (храните прямоугольники в порядке возрастания их номеров и реализуйте бинарный поиск прямоугольника в массиве).
Для взаимодействия с пользователем разработайте простое приложение Windows, содержащее команду меню для загрузки диалогового окна, позволяющего задать имя файла, и выводящее в клиентскую область фреймового окна загруженные прямоугольники.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2011, 19:07     пересекающиеся прямоугольники
Посмотрите здесь:

C++ 3 взаимно пересекающиеся окружности
Определить, имеются ли среди этих окружностей три параллельно пересекающиеся C++
C++ Вписанные прямоугольники
Раскрасить прямоугольники исходя из условия C++
C++ Задача на прямоугольники С++
Составить программу, определяющую, пересекаются ли данные прямоугольники, C++
Взаимно пересекающиеся хидеры у двух файлов C++
Найти не пересекающиеся треугольники C++
C++ Найти все прямоугольники заданной площади
Выявить все треугольники, не пересекающиеся с другими треугольниками этого набора C++
Равновеликие прямоугольники C++
Определить, имеются ли три прямые, пересекающиеся в одной точке C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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