Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 28.10.2016
Сообщений: 7

Проверить, образуют ли 4 точки (x, y) выпуклый четыреухгольник

28.10.2016, 21:54. Показов 3845. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если точки в любом порядке. Помогите, пожалуйста((
Я знаю как проверить если точки упорядочены, но если неупорядочены? Делать все 24 перестановки, проверять каждую?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.10.2016, 21:54
Ответы с готовыми решениями:

Определить, образуют ли точки выпуклый четырехугольник
люди помогите решить задачу Даны координаты четырех точек (x1,y1), (x2,y2), (x3,y3), (x4,y4). Необходимо определить, образуют ли...

Проверить образуют ли точки квадрат АВСD
На плоскости заданы координаты точек А, B, C, D. Проверить образуют ли они квадрат АВСD

Создают ли точки плоскости выпуклый многоугольник
Создают ли точки плоскости, координаты которых хранятся в двух массивах, выпуклый многоугольник. Добавлено через 5 часов 11 минут ...

5
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
28.10.2016, 22:55
bellaps, можно свести к задаче о том, находится ли точка внутри треугольника, и рассмотреть 4 треугольника: ABC, ABD, CDA, CDB. Если для всех четырех оставшаяся точка не находится внутри, то 4-угольник выпуклый.
0
0 / 0 / 0
Регистрация: 28.10.2016
Сообщений: 7
29.10.2016, 17:57  [ТС]
Спасибо, но меня смущает не то, как определить,выпуклый ли треугольник. А как определить какая точка будет како вершиной. Пользователь вводит вершине без порядка
0
Модератор
10048 / 3894 / 883
Регистрация: 22.02.2013
Сообщений: 5,847
Записей в блоге: 79
29.10.2016, 19:55
https://www.cyberforum.ru/post6189733.html
0
Заблокирован
29.10.2016, 20:44
Лучший ответ Сообщение было отмечено bellaps как решение

Решение

Цитата Сообщение от bellaps Посмотреть сообщение
Делать все 24 перестановки, проверять каждую?
Зачем?
Четыре точки определяют всего три четырехугольника, остальные - точные копии.
От этого и пляшем -
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Type Coor
   X As Double
   Y As Double
End Type
Dim p(3) As Coor
 
Private Sub Form_Click()
Cls
a = Array(Array(0, 1, 2, 3), Array(0, 1, 3, 2), Array(0, 2, 1, 3))
For i = 0 To 3
    p(i).X = Int(11 * Rnd)
    p(i).Y = Int(11 * Rnd)
    PSet (p(i).X, p(i).Y)
    Print i
Next
For j = 0 To 2
    s = abc(a(j)(0), a(j)(1), a(j)(2))
    If s = 0 Then Caption = "Никакой": Exit Sub
    For i = 0 To 3
        t = abc(a(j)((1 + i) Mod 4), a(j)((2 + i) Mod 4), a(j)((3 + i) Mod 4))
        If t = 0 Then Caption = "Никакой": Exit Sub
        If t <> s Then Exit For
    Next
    If i = 4 Then Caption = "Выпуклый": Exit Sub
Next
Caption = "ВПуклый"
End Sub
 
Function abc(a, b, c)
    abc = Sgn((p(a).X - p(c).X) * (p(b).Y - p(c).Y) - (p(b).X - p(c).X) * (p(a).Y - p(c).Y))
End Function
 
Private Sub Form_Load()
AutoRedraw = True
Scale (-1, 11)-(11, -1)
DrawWidth = 2
Randomize
End Sub
Миниатюры
Проверить, образуют ли 4 точки (x, y) выпуклый четыреухгольник  
1
0 / 0 / 0
Регистрация: 28.10.2016
Сообщений: 7
29.10.2016, 21:56  [ТС]
К сожалению я только начала изучать программирование и мы ещё не изучали массивы. Может вы можете поподробнее объяснить, что именно в этом коде происходит?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.10.2016, 21:56
Помогаю со студенческими работами здесь

Построить выпуклый многоугольник, вершины которого — заданные точки
Подскажите,пожалуйста,как решается такая задача: дано множество точек, построить выпуклый многоугольник, вершины которого - заданные...

Найти выпуклый многоугольник, который охватывает все точки множества
Здравствуйте, возникли трудности с выполнением данного задания. Вообще нет никаких идей.. Надеюсь на помощь. Задано множество точек на...

Найти минимальный по площади выпуклый многоугольник, что все точки лежат внутри этого многоугольника
N точек на плоскости заданы своими координатами. Найти такой минимальный по площади выпуклый многоугольник, что все N точек лежат либо...

Образуют ли точки треугольник
Пусть мы представляем точки на плоскости с помощью пар целых чисел. Опишите функцию, параметры которой - три точки, и которая возврашает...

Образуют ли 3 точки треугольник
Ввести числа x1,y1,x2,y2,x3,y3 которые являются значениями координат трех точек на &quot;плоскости.&quot; Определить, образуют ли они...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru