Why is Calc limited in exponent to 1e300 and 15 digits precision?
Calc is written using the programming language C++ and using the Microsoft Visual C++ development system and runtime support, which includes a mathematics library with various floating point variable types. We use the data type with the greatest precision on 32 bit systems, which has a maximum (base 10) exponent of 308 and a little over 15 digits of precision in the mantissa. This is not dependent on the operating system, nor is it dependent on the floating point hardware (provided performance is not an issue). We could use a special high precision maths library, or write our own, to get arbitrarily high levels of precision. But the applications of higher precision mathematics are fairly specialised and we did not think it justified the programming effort or performance penalty in a general purpose scientific and engineering tool like Calc.
Related Questions
- When I go to enter a new USA-CA number the number field is limited to 3 digits and appears as 100 and I can not change it to 10001, 1002, etc. How can I enter the numbers above 999?
- Why is the precision of java.math.BigDecimal limited to 18 digits in the JDK 1.0.2 add-on version of the JDBC API?
- Why is Calc limited in exponent to 1e300 and 15 digits precision?