I'm a sw dev. and every time there's a floating point error one should check for some dangerous ZERO somewhere.
i.e.: if something must be calculated dividing the Range of a weapon by its Power, then if you give Power a value of zero, you could get a f.p. error somewhere...
I'm only trying to guess, hope it helps