|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.05.2017, 20:10 | #1 |
Пользователь
Регистрация: 14.03.2017
Сообщений: 36
|
Описать тип struct
Описать тип struct Rectangle, задающий на плоскости замкнутый прямоугольник со сторонами, параллельными координатным осям и габаритами (x–, x+) и (y–, y+) по осям абсцисс и ординат соответственно. Реализовать в виде отдельных функций следующие операции над переменными этого типа:
а) вычисление площади прямоугольника; б) построение прямоугольника по паре точек, задающих любую пару противолежащих вершин; в) построение пересечения двух прямоугольников; г) проверка принадлежности точки прямоугольнику; д) проверка включения одного прямоугольника в другой; е) поворот прямоугольника относительно центра на прямой угол. С использованием описанных типа и функций разработать программу, которая для заданного набора из N прямоугольников находит: 1) площадь наименьшего из прямоугольников, содержащего в себе один и более прямоугольников из заданного набора; 2) все пары прямоугольников, совпадающих с точностью до поворота напрямой угол. Не знаю как сделать пункты, выделенные жирным. Помогите написать код |
28.05.2017, 20:26 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
покажите свои наработки, конкретные вопросы и т.п.
Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
28.05.2017, 20:39 | #3 |
Пользователь
Регистрация: 14.03.2017
Сообщений: 36
|
Наработок по факту нет, т.к. не очень понимаю что такое структуры и как с ними вообще работать
Код:
|
28.05.2017, 21:56 | #4 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Я не до конца не уверен...
1) пересечения двух прямоугольников - это тоже прямоугольник: Безымянный.png Координаты которого нужно найти. 2) поворот прямоугольника относительно центра: Безымянный 1.png 3) Обычно, ответ функций-проверок достаточно будет "Да/нет", т.е. тип "bool". Вы такой тип проходили? 4) Твои вопросы: Код:
p.s.: возьми нарисуй (в клеточку) как преобразуются при пересечении прямоугольников или повороте - выведи формулы (последовательности преобразования координат прямоугольников). Покажи здесь рисунки. |
28.05.2017, 21:59 | #5 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Ещё не понятно куда поворачивается: по-часовой стрелки или против (на 90градусов).
А не... это безразлично. |
28.05.2017, 22:04 | #6 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Я думаю, что при повороте, надо переписать "поворачивающий" прямоугольник.
Как думаешь об этом моменте? |
28.05.2017, 22:06 | #7 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Ещё вопрос, который ты должен ответить для себя:
как организовать хранения "N" прямоугольников? В виде динамического массива? Или списка? Или стека?.... Что проходили? |
28.05.2017, 22:08 | #8 |
Пользователь
Регистрация: 14.03.2017
Сообщений: 36
|
Относительно центра - центра системы координат, прямоугольник строится вокруг точки 0 со сторонами, параллельными осям координат. Формулы вывести не могу, т.к. не понимаю как использовать структуры
|
28.05.2017, 22:10 | #9 |
Пользователь
Регистрация: 14.03.2017
Сообщений: 36
|
Хранение списка прямоугольников пытаюсь организовать в массиве
Код:
|
28.05.2017, 22:20 | #10 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
1) Нет, статического массива не достаточно... Например, а если пользователь введёт "N=101"?
А вижу с динамической памятью ты не знаком. Это когда размер массива задаётся не при компиляции ("не жестко"), а в процессе работы программы. Хорошо, временно (повторюсь, временно), пусть будет q[100]... Расскажи о пересечении прямоугольников: что это значит? появление в программе нового прямоугольника с координатами? Или нет? (А просто вывод координат на экран). 2) Я тебе говорил, рисуй... Покажи графически, в клеточку.... Можно, в принципе и в Paint... Та и физически, на листочке, а потом фоткать.... Для начала просто прямоугольник, потом преобразования... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Описать тип данных в виде структуры. | pocheto | Помощь студентам | 3 | 29.12.2016 21:49 |
Реализовать struct Группа(group), в которой содержатся struct Студент(Student) | TokaChan | Помощь студентам | 2 | 07.07.2016 07:22 |
описать тип 'шахматная доска' | vadimc | Помощь студентам | 0 | 15.12.2012 10:54 |
Описать тип с данными о сотрудниках | Масим | Помощь студентам | 13 | 24.03.2010 14:09 |