On Apr 2, 12:14 am, Kai-Uwe Bux <jkherci...@gmx.netwrote:
utab wrote:
Dear all,
On a formatted printing operation that I am trying to accomplish for
doubles, I have a question. I would like to print a double, d, and its
square, d*d, but I would like to make the argument to be computed upon
the length of the numbers(d and d*d) so that it lines up neatly in the
columns. For this operation, I need the number of digits in a double,
however, due to floating point representation, the double values are
not represented exactly.
Nit: each double (apart from special values such as nan) represents a real
number and does so exactly. It just might happen that you are not
interested in that number but in a number nearby. But that is not the fault
of the double.
Thx for the reply. Ok, but it is not exact anyway in mathematical
sense ;)
exact in the *closest* sense.
>
So is there a way to find the number of
digits of a double number in a robust way for print out?
I would print the doubles into strings and then search for the decimal
point.
I forgot to tell that I wanted to constraint myself to find a solution
without stringstreams(by printing to strings, you mean to use a
stringstream I suppose). Do not find this as a stupid idea, I wanted
to develop a solutions list for the "Accelerated C++ book" and this
question is related to Exercise 4.4, till then on no stringstreams are
mentioned, this is the reason of the constraint ;)
Best,
>
P.S. For integers I coded a similar version like the one I explained
above but for doubles the above problem made me think on that a bit.
Best
Kai-Uwe Bux