Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.
 
PerlMonks  

Re: Arithmetic on numbers bigger than 1<<31

by flyingmoose (Priest)
on May 13, 2004 at 19:27 UTC ( [id://353187]=note: print w/replies, xml ) Need Help??


in reply to Arithmetic on numbers bigger than 1<<31

It can "do math" on it, presumably because the value just overflows... I doubt the value is correct.

Use should consider using BigInt/BigFloat for very large numbers, as if you get too many significant digits normal floating point math is going to lose accuracy...but of course there is a speed tradeoff.

  • Comment on Re: Arithmetic on numbers bigger than 1<<31

Replies are listed 'Best First'.
Re: Re: Arithmetic on numbers bigger than 1<<31
by thor (Priest) on May 13, 2004 at 20:29 UTC
    But that's the thing: it is doing at least some things correctly. I wanted to see what would happen with this code:
    perl -le 'print $i+=100_000_000 while 1'
    ...and it takes it like a champ, not reaching "Infinity" until something like 1e315. Also, this looks right, too:
    perl -le 'print (((1<<31)**(1<<5)), " ",((1<<31)**(1<<5)/2))'
    So, perl is somehow doing the arithmetic...maybe it's just lucky. :)

    thor

    p.s. This whole thing was more of a curiosity than anything. I've used Math::BigInt before. I was just perplexed by something that I would have expected not to work.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://353187]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (3)
As of 2024-04-25 23:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found