|
0 / 0 / 0
Регистрация: 08.11.2021
Сообщений: 28
|
|
Определение площади четырехугольника с заданными координатами его вершин как сумму площадей двух треугольников04.12.2021, 19:29. Показов 9948. Ответов 56
Метки нет (Все метки)
Написать программу определения площади четырехугольника с заданными
координатами его вершин (x1,y1), (x2,y2), (x3,y3), (x4,y4) как сумму площадей двух треугольников. Площадь треугольника, определенную по координатам вершин, рассчитать с помощью функции.
0
|
|
| 04.12.2021, 19:29 | |
|
Ответы с готовыми решениями:
56
программа определения площади шестиугольника с заданными координатами вершин как сумму площадей четырех треугольников Три треугольника заданы координатами своих вершин. Написать программу вычисления площадей треугольников и определения минимальной площади Определение площади шестиугольника с заданными координатами вершин |
|
985 / 465 / 234
Регистрация: 27.06.2014
Сообщений: 1,039
|
|
| 05.12.2021, 19:47 | |
|
А можно поступить так:
- ищем точку пересечения диагоналей - если точка принадлежит обоим диагоналям - четырёхугольник выпуклый; - если точка принадлежит только одной диагонали, то четырёхугольник вогнутый; - если точка за пределами обоих диагоналей - перекрещивающийся.
0
|
|
|
Модератор
|
|||
| 05.12.2021, 19:58 | |||
|
Просто надо любой делить по короткой диагонали. Но потом всё равно придётся искать точку пересечения сторон. Поэтому проще сразу её и искать.
0
|
|||
|
|
||
| 05.12.2021, 20:10 | ||
|
roach1967, Элд Хасп,
По определению:
Поэтому, порядок построения линий важен. Далее, после построения третьей линии - проверяем ее на пересечение с первой. После проверяем четвертую линию на пересечение со второй.
0
|
||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 05.12.2021, 21:48 | |
|
А ведь можно "составить" четырёхугольник из четырёх точек, взяв за первую точку - самую правую, а очерёдность следующих точек высчитывать в зависимости от угла к этой самой первой-правой точке. Как бы "собирать" точки по часовой стрелке.
Попробовал такой вариант, натыкивая вразброс четыре точки и вроде четырёхугольник получается. А так как последовательность точек будет уже известна, то несложно разбить фигуру на два треугольника, где точки первого (123), а второго (134) и посчитать суммарную площадь.
0
|
|
|
|
||
| 05.12.2021, 22:03 | ||
![]() Анализ все равно проводить, так легче это делать по ходу построения, а не тогда, когда уже все построено и искать эту "правую" точку. Добавлено через 1 минуту И опять же, нужно еще определить - 4угольник самопересекающийся или нет.
0
|
||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||
| 05.12.2021, 22:08 | ||
|
0
|
||
|
|
||
| 05.12.2021, 22:15 | ||
|
Добавлено через 2 минуты samana, кстати, кое где я встречался с такими мыслями - типа самопересекающийся 4угольник таковым не признается. Но где-то признается, а где-то нет. Какой именно случай рассматривается - нам не известно. Возможно, такие и не стоит рассматривать.
0
|
||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 05.12.2021, 22:16 | |
|
0
|
|
|
Модератор
|
|||
| 05.12.2021, 22:21 | |||
Даже, если не брать в расчёт пересекающиеся, то по заданному набору из 4 точек можно построить до трёх разных четырёхугольников, если не брать в расчёт порядок следования точек.
0
|
|||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||
| 05.12.2021, 22:28 | ||
|
wizard41, Элд Хасп, Если задача подразумевает вариант и с самопересекающимся четырёхугольником, то тогда конечно это отдельный разговор. На этом мои полномочия всё, с геометрией я на Вы.
Добавлено через 1 минуту
0
|
||
|
|
|
| 05.12.2021, 22:29 | |
|
samana, считаю, что наиболее оптимальным решением будет сверка 3-го с 1-ым и 2-го с 4-ым отрезка при построении. В иных пересечениях это будет уже точно не 4угольник.
По остальным случаям так же, следует запоминать именно порядок начертания линий (для более быстрого анализа впуклости/выпуклости).
1
|
|
|
Модератор
|
||
| 05.12.2021, 22:31 | ||
|
Вы же сами и приводили пример. С учётом раздела "Для начинающих на C#", а не "Для начинающих математиков" задача явно требует упрощения. Возможно ТС пропустил каое-то условие посчитав его неважным.
1
|
||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||
| 05.12.2021, 22:38 | ||
|
0
|
||
|
985 / 465 / 234
Регистрация: 27.06.2014
Сообщений: 1,039
|
||||||
| 05.12.2021, 23:00 | ||||||
|
Вот, кажется добил алгоритм:
0
|
||||||
|
985 / 465 / 234
Регистрация: 27.06.2014
Сообщений: 1,039
|
||||||
| 05.12.2021, 23:20 | ||||||
|
Да это на скорую руку
![]() Добавлено через 13 минут Переделал:
0
|
||||||
|
|
||
| 05.12.2021, 23:39 | ||
|
Определение того, что 4угольник перекрещивается, вроде бы верное. На первый взгляд. Но поздно уже. Если тема не заглохнет, изучу и предложу свой вариант. Добавлено через 13 минут Чисто геометрически я предложил вариант с анализом линий по ходу построения, но это тоже чисто аналитическая геометрия, т.е. не предполагает реальных построений. Ближе к сердцу мне вариант с матричным анализом, где координаты точек фигуры будут иметь значения M(i,j) и в этой матрице производить поиск пограничных значений и геометрической середины фигуры. Но это будет конкретная математика и в рамках данного вопроса наверное излишняя. А потом ТС появится и скажет, мол, да надо было всего прямоугольник разделить пополам двумя треугольниками и вычислить их площадь. А мы тут всю Евклидову геометрию сейчас разложим на код
0
|
||
| 05.12.2021, 23:39 | |
|
Помогаю со студенческими работами здесь
40
Определение периметра четырехугольника, заданного координатами его вершин
Докажите, что сумма площадей треугольников не меньше площади четырёхугольника Найти площадь четырехугольника как сумму площадей треугольников Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|