![]() If other words, just because you asked the question: for i in range(4000):ĭoes not mean that the 4000 digits thus printed have any meaning whatsoever.Īn IEEE-754 binary64 floating point number contains about 15.95 decimal digits of accuracy. 26e mean that the value contains 26 significant digits. Just because you ask for 5.2f output formatting does not mean that the value is between 99.99 and -9.99 and that the rest of the significant digits are zero. Whether these "output digits" have any meaning whatsoever is to be determined by the user of the output. SQLite3, and various other implementations for converting IEEE-754 floating point values to text, have chosen "arbitrary limits" for how long to "loop around the algorithm" which produces output digits. ![]() You can "run the conversion" process to any number of output digits your little heart desires. This can be observed also with other sample values. Does this extended format mean to match the 'double' representation? They don't match either double or long double, though closer toĭouble in this case. Thus my question about the meaningfulness of these digits. Yet the SQLite's printed value shows some other version of the "extended" digits. SQLite, as I understand, supports only the double. long double offers a higher resolution, so to speak and is the closest to the real value. I understand that these "extra"ĭigits are not random and are due to the IEEE 754 floating-point resolution, in other words, that's how the real value maps However, looking beyond the 16 figures, there is some divergence in the displayed values.
0 Comments
Leave a Reply. |