Remove the Complex case from the C example
Raise ArgumentError on non integer precision
Raise ArgumentError on zero or negative precision
Raise ArgumentError if precision is nil

* was already covered in the check for precision.is_a?(Integer)
Return postive INFINITY for x = BigDecimal::INFINITY