Регистрирайте се
Лице на изпъкнал многоъгълник
|
| Предишната тема :: Следващата тема |
| Автор |
Съобщение |
digital Начинаещ
Регистриран на: 10 Nov 2006 Мнения: 4
      
|
Пуснато на: Sat Nov 11, 2006 11:39 am Заглавие: Лице на изпъкнал многоъгълник |
|
|
Здравейте отново Въпроса ми е свързан с ето тази задача на С++,която трябва да напиша:
| Цитат: | Задача Да се състави програма за намиране на лицето на изпъкнал многоъгълник като сума от лицата на съставящите го триъгълници.
|
Някой може ли да ми даде формулата за намиране на лицето на изпъкнал многоъгълник По отношение на писането на алгоритъма нямам проблеми,така че може всякакви методи да ми предложите,стига да са верни естествено  |
|
| Върнете се в началото |
|
 |
Реклама
|
Пуснато на: Заглавие: Реклама |
|
|
|
|
|
| Върнете се в началото |
|
 |
M_Velinova Фен на форума
Регистриран на: 04 Oct 2006 Мнения: 650 Местожителство: Sofia
   гласове: 21
|
Пуснато на: Sat Nov 11, 2006 1:42 pm Заглавие: лице на изпъкнал многоъгълник |
|
|
Здравей Digital!
Не е коректно зададено условието. Ако е правилен многоъгълника, действаме по един начин. При неправилен са необходими 2*n-3 на брой дадени елементи, за да е определен n- ъгълника.
Уточни условието и ще помогна.
Vel |
|
| Върнете се в началото |
|
 |
digital Начинаещ
Регистриран на: 10 Nov 2006 Мнения: 4
      
|
Пуснато на: Sat Nov 11, 2006 4:30 pm Заглавие: |
|
|
Vlex,
Условието на задачата съм го копирал дословно от конспекта,който ми е даден.Нищо повече по въпроса не пише.Във вторник ще има консултации с доцента,къето ще се задават въпроси по тези задачи,ще го помоля да разясни условието и ще ти пиша пак с новото формулирано условие  |
|
| Върнете се в началото |
|
 |
Lubo Редовен
Регистриран на: 13 Aug 2006 Мнения: 237
     гласове: 10
|
Пуснато на: Sat Nov 11, 2006 9:04 pm Заглавие: Площ на изпъкнал 'n'-ъгълник |
|
|
Здравей digital,
Както и Vel казва, трябва да имаш нещо дадено за да можеш да решиш задачата.
Един възможен вариант:
Да допуснем, че знаеш координатите на върховете на многоъгълника (полигона), съответно:
(x1, y1) - връх 1
(x2, y2) - връх 2
(x3, y3) - връх 3
...
(xn, yn) - връх n
Твоята C++ програма трябва да изисква от потребителя да въведе
а) Броя на върховете на многоъгълника
б) Техните координати
==========
Как се намира площта на триъгълник по дадени координатите на трите му върха?
==========
Спомняш ли си следната формула за площ на триъгълник:
bcsin(A)/2
където 'b' и 'c' са съответно дължините на страните 'AC' и 'AB' на триъгълника 'ABC', а 'A' е ъгълът между тях?
---------
Спомняш ли си, че големината (абсолютната стойност) на векторното произведение на два вектора се дава с:
bcsin(A)
където 'b' и 'c' са дължините на двата вектора, а 'A' е ъгъла между тях?
----------
От сравнението на тези две формули можеш да видиш, че площта на триъгълника може да се намери като се раздели на 2 абсолютната стойност на съответното векторно произведение.
----------
По-нататък...
Спомняш ли си, че координатите на векторите 'АB' и 'AC' ако координатите на определящите ги точки 'A', 'B' и 'C' са съответно:
А(x1, y1)
B(x2, y2)
C(x3, y3)
се дават с:
AB(x2-x1, y2-y1)
AC(x3-x1, y3-y1)
----------
По-нататък...
Спомняш ли си, че големината (абсолютната стойност) на векторното произведение на два вектора (с общо начало 'А', в случая на горния триъгълник) ако са известни координатите им (виж горните формули) се дава с:
|(x2-x1)(y3-y1) - (y2-y1)(x3-x1)|
==========
Тогава площта на триъгълника ще се даде с
|(x2-x1)(y3-y1) - (y2-y1)(x3-x1)|/2
==========
Тъй като многоъгълникът може да се представи като 'сума' от триъгълници с общ връх в точката 'A' и други върхове - останалите върхове на многоъгълника (свържи точката 'A' с останалите върхове на многоъгълника), твоята програма трябва да изчисли площите на тези 'n-2' (Защо 'n-2'?) триъгълника и да ги събере!
==========
Любо |
|
| Върнете се в началото |
|
 |
|
|
Не Можете да пускате нови теми Не Можете да отговаряте на темите Не Можете да променяте съобщенията си Не Можете да изтривате съобщенията си Не Можете да гласувате в анкети Може да прикачвате файлове Може да сваляте файлове от този форум
|
|