заставил Бендера
|
|
1 | |
Геометрическая программа09.06.2011, 15:02. Показов 2272. Ответов 29
Метки нет (Все метки)
С ООП не знаком, помогите решить.
На плоскости задано множество прямоугольников. Определить, имеется ли прямоугольник, содержащий внутри себя все оставшиеся прямоугольники. Понятно что это можно сделать и без принципов ООП, но нужно бы был хотя бы один класс наследник. Во вложении что то примерно такое.
0
|
09.06.2011, 15:02 | |
Ответы с готовыми решениями:
29
геометрическая программа (С++) Программа на Си. Геометрическая Геометрическая фигура Геометрическая прогрессия |
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
|
|
15.06.2011, 13:22 | 21 |
Да не, в формпейнт не надо. Забабахай, например, кнопку и после ввода координат прямоугольников производи расчёты по нажатию на неё.
Опять же, придумай, как будешь вводить координаты. Считывать их с клавиатуры или может быть замутить что-то типа рисования мышью)) Билдер всё-таки, думаю не так это будет сложно.
0
|
заставил Бендера
|
||||||
15.06.2011, 14:22 [ТС] | 22 | |||||
dihlofos, ох, с горем пополам.. сделал программу которая анализирует два прямоугольника - их координаты, если координаты одного больше другого то выводится форма с сообщением.
но прямоугольников то у меня больше, как мне правильно сравнить их? такое условие уже не подходит. выложу файл проекта, вроде все норм для двух фигур. А так же код, своего условия для двух прямоугольников:
0
|
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
|
|
15.06.2011, 16:17 | 23 |
Чтобы много прямоугольников сравнивать, нужно создать класс или структуру, для хранения координат. Потом создать массив объектов этого класса, и сравнивать координаты прямоугольников внутри цикла.
Я вот тут набыдлокодил малость, можешь глянуть. Возможно лучше будет обратиться в раздел по билдеру, чтоб красивше получилось
1
|
заставил Бендера
|
|
15.06.2011, 23:21 [ТС] | 24 |
вот с этим проблема... с этим не разобрался...
Добавлено через 6 часов 48 минут ребят подскажите как сделать для всех фигур, хотя бы для 4-5 прямоугольников..
0
|
Каратель
|
|
15.06.2011, 23:49 | 25 |
что ж тут непонятного, создаете класс/структуру в котой храните координаты
создаете массив объектов созданой структуры/класса и тупенько проверяете координаты
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
16.06.2011, 01:43 | 27 |
Можно найти крайнюю левую, правую, верхнюю и нижнюю координаты. Если они все принадлежат одному прямоугольнику, и только ему - значит все остальные внутри него.
0
|
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
|
||||||
16.06.2011, 06:05 | 28 | |||||
Согласен, так будет конечно, лучше. Вот только с кодом у меня почему-то напряг вышел - получился вот такой слабочитабельный кусок:
1
|
заставил Бендера
|
|
16.06.2011, 09:10 [ТС] | 29 |
dihlofos, в какой кусок мне то это вставлять? o-0.. и я так понял что это надо сделать функцией, и из какой то формы писать координаты и передавать в эту функцию.. мне немного проще надо - предположим мы знаем уже все координаты прямоугольников какие у них есть, мы их так сказать уже нарисовали - и теперь только осталось определить, есть ли тот в котором лежат все остальные
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
16.06.2011, 11:18 | 30 |
Двух точек вполне достаточно. Если x1y1 - левый верхний угол, а x2y2 - правый нижний, то левый нижний это x1y2. А структура, а то и класс point действительно был бы кстати...
0
|
16.06.2011, 11:18 | |
16.06.2011, 11:18 | |
Помогаю со студенческими работами здесь
30
Геометрическая фигура Геометрическая прогрессия геометрическая прогрессия Геометрическая прогрессия Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |