Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/101: Рейтинг темы: голосов - 101, средняя оценка - 4.75
Great_Cornholio
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 2
1

Найти площадь многоугольника по координатам

17.03.2010, 11:32. Просмотров 18834. Ответов 2
Метки нет (Все метки)

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

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

Поиски по форуму привели меня на эту ветку
http://www.cyberforum.ru/pascal/thre...read81471.html

Только дело в том, что многоугольник там правильный, а не произвольный.

Заранее благодарю за помощь.

Добавлено через 15 часов 39 минут
///up
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2010, 11:32
Ответы с готовыми решениями:

Найти площадь четырехугольника по координатам точки
Дaны четыре тoчки на плoскoсти, обрaзующие выпyклый чeтырехугольник и тoчка...

найти площадь треугольника по координатам точек
Даны координаты трех точек, не лежищих на одной прямой. нафти площадь...

По координатам трех вершин некоторого треугольника найти его площадь и периметр
Помогите написать программу! 1) По координатам трех вершин некоторого...

Вычислить площадь правильного многоугольника
Вычислить площадь правильного многоугольника со стороной а, используя...

Площадь фигуры по координатам вершин
Даны натуральное число n, действительные числа...

2
Somebody
2801 / 1612 / 251
Регистрация: 03.12.2007
Сообщений: 4,215
Завершенные тесты: 3
22.03.2010, 17:11 2
Найти площадь многоугольника по координатам

Разбиваем на треугольники, считаем их площади со знаком, складываем, берём модуль. Площади со знаком - то есть, у 012 и 023 будут положительные, у 034 - отрицательная, в сумме - что надо. Модуль на случай, если вершины будут в порядке по часовой стрелке.
Площадь треугольника abc - это
1/2*ab*ac*sin(a),
что в координатах будет
1/2*((xb-xa)*(yc-ya)-(yb-ya)*(xc-xa)
(см. про псевдоскалярное произведение).
1
Great_Cornholio
0 / 0 / 0
Регистрация: 14.03.2010
Сообщений: 2
26.03.2010, 15:01 3
Лучший ответ Сообщение было отмечено как решение

Решение

Нашел решение задачи в сборнике задач для олимпиад.

Pascal
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Program Ploshad_Mnogougolnika;
Uses crt;
Var p,s,min: real;
    n: integer;
    x,y: array[1..21] of real;
 
Procedure Vvod;
Var i: integer;
Begin
 write('Vvedite kolichestvo yglov mnogougolnika n=');
 readln(n);
 for i:= 1 to n do
  begin
   writeln('vvedite kkordinatu N ',i);
   write('x[',i,']=');
   readln(x[i]);
   write('y[',i,']=');
   readln(y[i]);
  end;
  x[n+1]:=x[1];
  y[n+1]:=y[1];
End;
 
Procedure Perenos;
Var i: integer;
Begin
 min:=y[1];
 for i:= 2 to n do
  if min >y[i] then
   min:=y[i];
  for i:=1 to n+1 do
   y[i]:=y[i]-min;
End;
 
Procedure Ploshad;
Var i: integer;
Begin
 s:=0;
 for i:= 1 to n do
  s:= s+((y[i+1]+y[i])*(x[i+1]-x[i])/2);
end;
 
Procedure Vyvod;
Begin
 writeln('Ploshad mnogougolnika S=',abs(s):1:2);
 readln;
end;
 
Begin
 clrscr;
 Vvod;
 Perenos;
 Ploshad;
 Vyvod;
end.
Вопрос решен. Спасибо тем, кто отозвался.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.03.2010, 15:01

Вычислить площадь выпуклого многоугольника, если известны координаты его вершин
Вычислить площадь выпуклого многоугольника, если известны координаты его вершин.

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

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


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru