|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
Определить, образуют ли точки выпуклый четырехугольник29.10.2008, 16:44. Показов 20215. Ответов 32
Метки нет (Все метки)
люди помогите решить задачу
Даны координаты четырех точек (x1,y1), (x2,y2), (x3,y3), (x4,y4). Необходимо определить, образуют ли они выпуклый четырехугольник. Ввод : координаты точек в порядке обхода. Вывод : ответ в виде 'ВЫПУКЛЫЙ'/'НЕВЫПУКЛЫЙ'. Пример Пример ввода: 1 1 0 0 1 -1 -1 0 Пример вывода: НЕВЫПУКЛЫЙ
0
|
|
| 29.10.2008, 16:44 | |
|
Ответы с готовыми решениями:
32
Образуют ли 3 точки треугольник Определить, образуют ли точки вершины квадрата
|
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 30.10.2008, 13:51 | |
|
Через диагонали самое быстрое, составляешь два уравнения, приравниваешь и находишь координаты пересечения прямых, потом смотришь, попадает ли точка на оба отрезка прямой, т.е. на собственно диагонали. Писать лень, ненавижу эти трехэтажные формулы в математике.
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
||||||
| 30.10.2008, 13:59 | ||||||
решение этой задачи сводится к доказательству того что ни один из углов не является развернутым - т.е. 180гр. или большим ему для того чтобы понять что за угол перед нами лежит переводим лучи выходящие из этого угла в полярную систему координат из декартовой - получаем углы соответственно. два луча выходящих из одной точки делят все пространство на 2 части, чтобы понять какая из этих частей принадлежит внутреннему углу многоугольника, смотрим в какую сторону выходит один из лучей его диагоналей Такое решение приемлемо для любых многоугольников. Я же вам говорил, что это 5й класс школьной программы геометрии. ![]() Всё гениальное просто )))
0
|
||||||
|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
| 30.10.2008, 14:02 [ТС] | |
|
а можешь написать полностью всю задачу?
P. S. пожалуйста.
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
||||||
| 30.10.2008, 15:19 | ||||||
0
|
||||||
|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
| 30.10.2008, 15:45 [ТС] | |
|
он выдаёт ошибку 18:0 деление на 0.
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
|
| 30.10.2008, 15:47 | |
|
Какая строка ?? напиши на какой строке выдает - посмотрим...
0
|
|
|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
| 30.10.2008, 15:48 [ТС] | |
|
В начале 18-ой
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
|
| 30.10.2008, 15:57 | |
|
Всё понял...
Там нужна доп проверка, чтобы избежать деления на ноль Добавлено через 59 секунд *** !!! я что знаю где тут 18я ?))))) если бы тут была более сложная задача я бы долго её искал... а тут только одно деление - в арктангенсе. Добавлено через 35 секунд поэтому надо писать саму строчку - а не её номер!!!) Добавлено через 33 секунды сейчас исправлю Добавлено через 6 минут 21 секунду Исправил... А так же исправил обшибку с градусами/радианами
0
|
|
|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
| 30.10.2008, 15:59 [ТС] | |
|
в функции?
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
||
| 30.10.2008, 16:09 | ||
|
Ну и что на этот раз ?
Какие еще ошибки ? Добавлено через 1 минуту 16 секунд
0
|
||
|
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
|
|
| 31.10.2008, 07:58 | |
|
Скажи, на чем основан твой метод, ксентар
0
|
|
|
18 / 18 / 0
Регистрация: 29.10.2008
Сообщений: 100
|
|
| 31.10.2008, 10:25 [ТС] | |
|
что такое "ксентар"
0
|
|
|
Of Wolf and Man
999 / 198 / 5
Регистрация: 09.07.2008
Сообщений: 1,784
|
||||||||
| 31.10.2008, 12:11 | ||||||||
Для этого мы перебираем все углы. Для того чтобы найти углы берем точку и два луча A1, A2 из неё - переводим в полярную систему координат, и считаем разность углов лучей A=A1-A2 - т.е. угол многоугольника - в этом случае мы получаем 2 угла 1й угол = A - то что мы получили взяв разницу углов векторов. 2й угол = 360-A - противоположенный ему угол. Необходимо определить какой из них принадлежит нашему многоугольнику, для этого берем диагональ D из этой же точки к еще одной из точек нашего многоугольника, и смотрим лежит ли диагональ D между лучами A1 и A2, ежели да, то разница углов лучей A1 и A2 будет уголом нашего многоугольника Ежели D не находиться в промежутке между A1 и A2 то разность этих углов - внешний угол, а угол нашего многоугольника будет все остальное, окромя разности этих углов 360-(A1-A2) Таким образом перебираем все углы. Если какой то из углов >=180 градусов то устанавливаем булевский флаг, сигнализирующий о том что этот многоугольник не является выпуклым. Вывод решения. Добавлено через 4 минуты 12 секунд
Я потестил - вроде работает... Если что не так - пиши при каких значениях не работает - будем смотреть.
2
|
||||||||
| 31.10.2008, 12:11 | |
|
Помогаю со студенческими работами здесь
33
Четырехугольник задан координатами своих вершин составить программу которая определяет какой это четырехугольник
Нарисовать четырехугольник минимальной площади, охватывающий все заданные точки
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|