Вычислить площадь пятиугольника по формуле Герона - Pascal
Формулировка задачи:
Нужна помощь в решении: Даны координаты вершин некоторого пятиугольника. Разбив его на треугольники вычислить его площадь. Вычисление площади треугольника по формуле Герона оформить в виде процедуры пользователя. Зарание спасибо
Решение задачи: «Вычислить площадь пятиугольника по формуле Герона»
textual
Листинг программы
type
TPoint = record
x, y: Real;
end;
function SqTri(const p1, p2, p3: TPoint): Real;
var
l1, l2, l3, p: Real;
function L(const p1, p2: TPoint): Real;
begin
L := Sqrt(Sqr(p1.x - p2.x) + Sqr(p1.y - p2.y));
end;
begin
l1 := L(p1, p2);
l2 := L(p2, p3);
l3 := L(p3, p1);
p := (l1 + l2 + l3) / 2;
SqTri := Sqrt(p * (p - l1) * (p - l2) * (p - l3));
end;
var
p1, p2, p3, p4, p5: TPoint;
begin
Write('P1: '); ReadLn(p1.x, p1.y);
Write('P2: '); ReadLn(p2.x, p2.y);
Write('P3: '); ReadLn(p3.x, p3.y);
Write('P4: '); ReadLn(p4.x, p4.y);
Write('P5: '); ReadLn(p5.x, p5.y);
WriteLn('Sqr=', (SqTri(p1, p2, p3) + SqTri(p1, p3, p4) + SqTri(p1, p4, p5)):0:3);
end.
Объяснение кода листинга программы
- Определение типа данных TPoint:
- Переменная
TPointимеет два поляxиyтипаReal, используемые для представления координат точки.
- Переменная
- Определение функции SqTri для вычисления площади треугольника:
- Переменные p1, p2, p3 представляют точки треугольника типа
TPoint. - Функция L(p1, p2) используется для вычисления длины отрезка между точками
p1иp2. - Внутри функции вычисляются длины сторон треугольника l1, l2, l3 и полупериметр p.
- Площадь треугольника вычисляется по формуле Герона и возвращается как результат.
- Переменные p1, p2, p3 представляют точки треугольника типа
- Определение переменных p1, p2, p3, p4, p5 типа TPoint для задания координат точек пятиугольника.
- Ввод координат пяти точек:
- Пользователю предлагается ввести координаты пяти точек (P1, P2, P3, P4, P5) с помощью функции ReadLn.
- Вычисление и вывод площади пятиугольника:
- Для каждой тройки последовательных точек вычисляется площадь треугольника с помощью функции SqTri.
- Суммарная площадь пятиугольника вычисляется путем сложения площадей треугольников и выводится.