Напишите функцию, вычисляющую площадь треугольника по координатам его вершин. Напишите программу вычисления площади четырёхугольника по координатам его вершин с помощью этой функции.
Проведём диагональ AC. Она разбивает выпуклый четырёхугольник ABCD на треугольники ABC и ACD, поэтому площадь четырёхугольника равна сумме их площадей.
Площадь треугольника по координатам получаем как половину модуля определителя двух векторов, выходящих из первой вершины:
def area(x , y , x , y , x , y ):
double_area = ((x - x ) * (y - y )
- (x - x ) * (y - y ))
return abs(double_area) /
xa, ya = map(float, input().split())
xb, yb = map(float, input().split())
xc, yc = map(float, input().split())
xd, yd = map(float, input().split())
s = (area(xa, ya, xb, yb, xc, yc)
+ area(xa, ya, xc, yc, xd, yd))
print(s)
Проверим на прямоугольнике
Площадь четырёхугольника ABCD равна
