This week's book giveaway is in the OCAJP 8 forum.We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line!See this thread for details.
Big Moose Saloon
 Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies Register / Login Win a copy of OCA Java SE 8 Programmer I Study Guide this week in the OCAJP 8 forum!

# Division by zero floating point question

Vanitha Naidu
Greenhorn

Joined: Jun 20, 2004
Posts: 2
I am going through Java 2 Sun Certification Study guide by Sierra/Bates.

On Page 163 (last paragraph) the authors discuss division by zero and state that "Floating-point numbers divided by zero return either positive or negative infinity, depending on whether or not the zero is positive or negative!"

When I tested this in code I get -infinity only when the dividend is negative regardless of whether 0(divisor) is positive or negative

i.e. -6.25/0 or -6.25/-0 is -infinity and
6.25/0 or 6.25/-0 is infinity

so the answer is dependant on the sign of the dividend and not on whether 0 is positive or negative.

Thanks
Vanitha
Chris Allen
Ranch Hand

Joined: Feb 01, 2003
Posts: 127
I created a small program to test the above problem. Here is the code:

The output is as follows:
Value is:-Infinity
Value is:-Infinity
Value is:Infinity
Value is:Infinity

I am guessing that your divisor is not a floating point number (either a float or double) but an integer which is accounting for the incorrect result.
Sanyev Babu
Ranch Hand

Joined: Dec 18, 2003
Posts: 132
in 6.25/-0 the -0 is an integer. When it gets pormoted to a float it becomes 0.0 not -0.0. That's why you are getting positive infinity for 6.25/-0
Sanyev
Vanitha Naidu
Greenhorn

Joined: Jun 20, 2004
Posts: 2
Thank you for that explanation, I was not using a floating point zero for my divisor.

Vanitha Naidu

I agree. Here's the link: http://aspose.com/file-tools

subject: Division by zero floating point question