Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- В этой задаче можно воспользоваться векторным произведением -- модуль векторного произведения векторов равен площади ромба, построенного на них. Половина площади ромба -- площадь треугольника.
- Пример кода на python (используем класс vector для хранения векторов):
- from math import *
- class vector:
- def __init__(self, x, y):
- self.x = x
- self.y = y
- def __add__(self, other):
- return vector(self.x + other.x, self.y + other.y)
- def __sub__(self, other):
- return vector(self.x - other.x, self.y - other.y)
- def __mul__(self, other): #скалярное произведение
- return self.x * other.x + self.y * other.y
- def __xor__(self, other): #векторное произведение
- return self.x * other.y - self.y * other.x
- def len(self):
- return sqrt(self.x * self.x + self.y * self.y)
- x1, y1, x2, y2, x3, y3 = map(int, input().split())
- a = vector(x1, y1)
- b = vector(x2, y2)
- c = vector(x3, y3)
- ab = b - a
- ac = c - a
- print(abs(ab ^ ac) / 2)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement