Area of a triangle

Cannot sample enough valid points. (more)

?

\[\left(\left(0 < a \land a < b + c\right) \land \left(0 < b \land b < a + c\right)\right) \land \left(0 < c \land c < a + b\right)\]
\[\sqrt{\left(\left(\frac{\left(a + b\right) + c}{2} \cdot \left(\frac{\left(a + b\right) + c}{2} - a\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - b\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - c\right)} \]
(FPCore (a b c)
 :precision binary64
 (sqrt
  (*
   (*
    (* (/ (+ (+ a b) c) 2.0) (- (/ (+ (+ a b) c) 2.0) a))
    (- (/ (+ (+ a b) c) 2.0) b))
   (- (/ (+ (+ a b) c) 2.0) c))))
double code(double a, double b, double c) {
	return sqrt(((((((a + b) + c) / 2.0) * ((((a + b) + c) / 2.0) - a)) * ((((a + b) + c) / 2.0) - b)) * ((((a + b) + c) / 2.0) - c)));
}
real(8) function code(a, b, c)
    real(8), intent (in) :: a
    real(8), intent (in) :: b
    real(8), intent (in) :: c
    code = sqrt(((((((a + b) + c) / 2.0d0) * ((((a + b) + c) / 2.0d0) - a)) * ((((a + b) + c) / 2.0d0) - b)) * ((((a + b) + c) / 2.0d0) - c)))
end function
public static double code(double a, double b, double c) {
	return Math.sqrt(((((((a + b) + c) / 2.0) * ((((a + b) + c) / 2.0) - a)) * ((((a + b) + c) / 2.0) - b)) * ((((a + b) + c) / 2.0) - c)));
}
def code(a, b, c):
	return math.sqrt(((((((a + b) + c) / 2.0) * ((((a + b) + c) / 2.0) - a)) * ((((a + b) + c) / 2.0) - b)) * ((((a + b) + c) / 2.0) - c)))
function code(a, b, c)
	return sqrt(Float64(Float64(Float64(Float64(Float64(Float64(a + b) + c) / 2.0) * Float64(Float64(Float64(Float64(a + b) + c) / 2.0) - a)) * Float64(Float64(Float64(Float64(a + b) + c) / 2.0) - b)) * Float64(Float64(Float64(Float64(a + b) + c) / 2.0) - c)))
end
function tmp = code(a, b, c)
	tmp = sqrt(((((((a + b) + c) / 2.0) * ((((a + b) + c) / 2.0) - a)) * ((((a + b) + c) / 2.0) - b)) * ((((a + b) + c) / 2.0) - c)));
end
code[a_, b_, c_] := N[Sqrt[N[(N[(N[(N[(N[(N[(a + b), $MachinePrecision] + c), $MachinePrecision] / 2.0), $MachinePrecision] * N[(N[(N[(N[(a + b), $MachinePrecision] + c), $MachinePrecision] / 2.0), $MachinePrecision] - a), $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(a + b), $MachinePrecision] + c), $MachinePrecision] / 2.0), $MachinePrecision] - b), $MachinePrecision]), $MachinePrecision] * N[(N[(N[(N[(a + b), $MachinePrecision] + c), $MachinePrecision] / 2.0), $MachinePrecision] - c), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
\sqrt{\left(\left(\frac{\left(a + b\right) + c}{2} \cdot \left(\frac{\left(a + b\right) + c}{2} - a\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - b\right)\right) \cdot \left(\frac{\left(a + b\right) + c}{2} - c\right)}