// Example: I96c5e2
print "Example: I96c5e2";
previous_setting := GetEchoInput();
SetEchoInput(true);
TriangleArea := procedure(a, b, c)
    Q := Sort([a, b, c]);
    A, B, C := Explode(Q);
    sumAB := A + B;    
    if sumAB lt C then
        print "No triangle has these side-lengths.";
    elif sumAB eq C then
        print "Triangle is degenerate (straight line).";
      print "Area is 0 square units.";
    else
        s := (A+B+C)/2;
        print "Area is", Sqrt(s*(s-A)*(s-B)*(s-C)),
          "square units.";
    end if;
end procedure;
SetEchoInput(previous_setting);
