Визначити площу чотирикутника, якщо відомі координати його вершин.
# Варіант 1
# Обчислення площі чотирикутника
# через використання площі трапеції
#
# Обчислення площі чотирикутника
# через використання площі трапеції
#
x1, y1, x2, y2, x3, y3, x4, y4 = map(float, input().split())
s12 = (y2+y1)*(x2-x1)/2
s23 = (y3+y2)*(x3-x2)/2
s34 = (y4+y3)*(x4-x3)/2
s14 = (y1+y4)*(x1-x4)/2
s = s12+s23+s34+s14
print(round(s, 2))
s12 = (y2+y1)*(x2-x1)/2
s23 = (y3+y2)*(x3-x2)/2
s34 = (y4+y3)*(x4-x3)/2
s14 = (y1+y4)*(x1-x4)/2
s = s12+s23+s34+s14
print(round(s, 2))
# Варіант 2
# Обчислення площі чотирикутника
# через використання формули Герона
# Обчислення площі чотирикутника
# через використання формули Герона
from math import sqrt
x1, y1, x2, y2, x3, y3, x4, y4 = map(float, input().split())
def vids(a1,b1,a2,b2):
d=sqrt((a2-a1)**2+(b2-b1)**2)
return d
def area(a, b, c):
p=(a+b+c)/2
s=sqrt(p*(p-a)*(p-b)*(p-c))
return s
d12=vids(x1,y1,x2,y2)
d23=vids(x2,y2,x3,y3)
d13=vids(x1,y1,x3,y3)
d34=vids(x3,y3,x4,y4)
d41=vids(x4,y4,x1,y1)
s1=area(d12, d23, d13)
s2=area(d13, d34, d41)
ss=s1+s2
print(round(ss,2))
Комментариев нет:
Отправить комментарий