![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 25.09.2009
Сообщений: 4
|
![]()
Здравствуйте господа программисты.
У меня вот такая вот задачка... "Даны действительные числа x1, y1,x2, y2, x3, y3, x4, y4, которые определяют координаты вершин четырёхугольника при их последовательном обходе (x1,y1), (x2,y2), (x3,y3), (x4,y4). Определить вид четырёхугольника." Собственно в целом всё понятно и алгоритм я составил, но загвоздка в трапеции. Трапецией называется четёрхугольник, у которого основания (противолежащие 2 стороны) параллельны... Так вот, как оформить условие, что они параллельны? Заранее благодарю ) |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]()
может так?
Код:
|
![]() |
![]() |
![]() |
#3 | |
Регистрация: 25.09.2009
Сообщений: 4
|
![]() Цитата:
Во-первых, тогда координаты не последовательны (тогда уж обозначать так: y1-верхний левый, y2-верхний правый, y3-нижний правый, y4-нижний левый) А во-вторых, кто сказал, что параллельные стороны обязательно должны быть горизонтальными? Параллельные стороны можно построить и вертикально, и под углом... и всё равно можно будет составить трапецию... |
|
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
![]()
Ну я не знал, как именно вы их расположили) можно и так, это не принципиально. Раз могут быть не только горизонтальными, то, как вариант, можно искать угловые коэффициенты прямых и сравнивать их(они должны быть равны). :
Код:
|
![]() |
![]() |
![]() |
#5 |
Регистрация: 25.09.2009
Сообщений: 4
|
![]()
Что господа программисты, мыслей нет больше никаких?
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 16.04.2009
Сообщений: 247
|
![]()
Можно найти уравнения прямых в виде Ax + By + C = 0.
У прямой проходящей через точки (x1, y1) и (x2, y2) такое уравнение: (y2 - y1) * x + (x1 - x2) * y + x2 * y1 - x1 * y2 = 0 Прямые параллельны тогда и только тогда, когда A1 * B2 - A2 * B1 = 0. |
![]() |
![]() |