#include <bits/stdc++.h>
using namespace std;
struct point{
double x,y;
point(double A,double B){
x=A,y=B;
}
point() = default;
};
struct triangle{
point a,b,c;
triangle(point A,point B,point C){
a=A,b=B,c=C;
}
triangle() = default;
};
double getArea(triangle T){
// TODO: 计算三角形T的面积
//承接前面一道题,可以求点到直线的距离,并求线的长度,然后利用底高除2
//x3,x2,x1 T.c.x y3 T.c.y
double result,heigh, low,a,b;
a = T.b.y - T.a.y;
b = T.b.x - T.a.x;
heigh = abs((a*(T.c.x - T.b.x)- b*(T.c.y - T.b.y))/sqrt(a*a+b*b));
low = sqrt((T.a.x - T.b.x)*(T.a.x - T.b.x)+(T.a.y - T.b.y)*(T.a.y - T.b.y));
result = 0.5 *heigh *low;
return result;
}
int main(){
int x, y;
cin >> x >> y;
point a(x, y);
cin >> x >> y;
point b(x, y);
cin >> x >> y;
point c(x, y);
triangle T(a, b, c);
cout << fixed << setprecision(2) << getArea(T) << endl;
return 0;
}