Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.01.2016, 12:43   #21
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

эт почему? Ориентированная площадь работает и на невыпуклом.
Poma][a вне форума Ответить с цитированием
Старый 01.01.2016, 13:04   #22
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Работает. Посчитай площадь своей формулой для
Код:
  a[1].X:=0; a[1].Y:=4;
  a[2].X:=0; a[2].Y:=0;
  a[3].X:=1; a[3].Y:=1;
  a[4].X:=4; a[4].Y:=0;
Должно быть 8. А чего дает формула?

Заодно и для
Код:
  a[1].X:=0; a[1].Y:=0;
  a[2].X:=0; a[2].Y:=4;
  a[3].X:=1; a[3].Y:=1;
  a[4].X:=4; a[4].Y:=0;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 01.01.2016 в 13:09.
Аватар вне форума Ответить с цитированием
Старый 01.01.2016, 18:01   #23
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Тогда я ничего не понял..
Как эти 4 города задаются? (уж пардон.. гугл-переводчик чет не очень помогает)..
Poma][a вне форума Ответить с цитированием
Старый 02.01.2016, 14:15   #24
Viktor_Ptica
Пользователь
 
Регистрация: 23.12.2015
Сообщений: 22
Лампочка

Во входном файле подставь данные
Цитата:
Сообщение от Аватар Посмотреть сообщение
Работает. Посчитай площадь своей формулой для
Код:
  a[1].X:=0; a[1].Y:=4;
  a[2].X:=0; a[2].Y:=0;
  a[3].X:=1; a[3].Y:=1;
  a[4].X:=4; a[4].Y:=0;
Должно быть 8. А чего дает формула?

Заодно и для
Код:
  a[1].X:=0; a[1].Y:=0;
  a[2].X:=0; a[2].Y:=4;
  a[3].X:=1; a[3].Y:=1;
  a[4].X:=4; a[4].Y:=0;
и сделай вывод площади отдельно.

Здесь вопрос в том, что надо определить как расположена точка относительно 4х прямых (выше или ниже/правее или левее). Как на счет просто выяснить для каждой прямой это отношение с точкой поочередно, предварительно сделав тоже самое для каждой соседней прямой? Скажем (возьмем горизонтально расположенный прямоугольник к примеру) для верхней прямой правая и левая находятся в нижней полуплоскости, для правой - верхняя и нижняя - в левой и т.д. А потом провести тоже самое с точкой. И если все 4 результата совпадут - то точка внутри, а при несовпадении хотя бы одного - снаружи. Проблема останется только при 4-хугольнике в форме стрелки (когда диагонали не пересекаются(одна из них вне фигуры))
Если задача кажется легкой - то решать её придется очень долго.
Viktor_Ptica вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анимация в Pascal ABC - закат солнца. (Очень нужна помощь, доделать программу) Господин Никто Паскаль, Turbo Pascal, PascalABC.NET 5 28.05.2015 13:11
Интересное задание при устройстве на работу по БД (нужна помощь) maybebest Помощь студентам 2 09.01.2015 00:52
Проектное задание. Нужна помощь. Vektor1 Помощь студентам 19 07.11.2013 19:08
Помогите доделать задание. fred9ra Общие вопросы C/C++ 1 11.01.2009 22:16