Clear questions and runnable code get the best and fastest answer |
|
PerlMonks |
Re^2: math problemsby kennethk (Abbot) |
on Mar 29, 2011 at 14:41 UTC ( [id://896183]=note: print w/replies, xml ) | Need Help?? |
I suspect this will only mask this issue for the OP. At best, this give the OP a factor of two improvement before he hits the ceiling, and then it transforms an obvious error to a silent one. For example, the code:
printf "%020u\n%020u\n%020u\n", 9223372036854775808,20000000000000000000,99999999999999999999 outputs under 64-bit
and under 32-bit
The swapping to %020.0f puts you at the whims of round-off, with 32-bit yielding
and 64-bit yielding
That round-off might well be acceptable depending on the specific numbers involved and required accuracy; if not the OP will likely have to resort to Math::BigInt or equivalent.
In Section
Seekers of Perl Wisdom
|
|