long int computations
Dave Angel
davea at ieee.org
Mon May 3 12:10:36 EDT 2010
Victor Eijkhout wrote:
> I have two long ints, both too long to convert to float, but their ratio
> is something reasonable. How can I compute that? The obvious "(1.*x)/y"
> does not work.
>
> Victor.
>
>
You don't make clear what you mean by "too long to convert to float."
Do you mean can't convert exactly, or that they're more than 400 digits
or whatever the exponent limit of float is (I'm too lazy to look it up
right now) ?
Assuming the latter, you could divide each by the same constant, then
use your formula above to make a float version of the ratio. How to
pick the constant? How about the smaller of your numbers, divided by
1e18 ? You'd have to build that number using longs as well.
Alternatively, you could build your own floating point library, using
longs as the mantissa.
DaveA
More information about the Python-list
mailing list