program q;
var a,b,c,d, a1, b1, c1 :integer;
var e,p :real;
begin
a:=0; b:=0; c:=0; d:=0;
read (a, b, c, d);
a1:=a-d;
b1:= b-d;
c1:= c-d;
p:= (a1+b1+c1)/2;
e:=p*((p-a1)*(p-b1)*(p-c1));
e:= sqrt(e);
write (e:5);
end.
cHJvZ3JhbSBxOwp2YXIgYSxiLGMsZCwgYTEsIGIxLCBjMSA6aW50ZWdlcjsKdmFyIGUscCA6cmVhbDsKYmVnaW4KYTo9MDsgYjo9MDsgYzo9MDsgZDo9MDsKcmVhZCAoYSwgYiwgYywgZCk7CmExOj1hLWQ7CmIxOj0gYi1kOwpjMTo9IGMtZDsKcDo9IChhMStiMStjMSkvMjsKZTo9cCooKHAtYTEpKihwLWIxKSoocC1jMSkpOwplOj0gc3FydChlKTsKd3JpdGUgKGU6NSk7CmVuZC4=