Win a copy of The Way of the Web Tester: A Beginner's Guide to Automating Tests this week in the Testing forum!

# Floating point divide by zero

Srinivas Kumar
Ranch Hand
Posts: 52
Can anybody explain whether the following statement is true or not.
If true, please explain.

Floating point modulo (%) by zero produces NaN , but floating point divide by zero does not.

Harshada Deshmukh
Greenhorn
Posts: 12
Hi
Its true
Floating point divide by zero produces Infinity & Floating point modulo by zero produces NaN(not a number)

JB Ramesh
Greenhorn
Posts: 20
does anyone know the reason behind this ?

Why arithmetic exception happens for int and not for float ?
[ March 28, 2007: Message edited by: JB Ramesh ]

Henry Wong
author
Marshal
Posts: 21741
85
Originally posted by JB Ramesh:
does anyone know the reason behind this ?

Why arithmetic exception happens for int and not for float ?

The behavior of float is actually defined by the IEEE standard. Java follows the same standard used by most floating point processors in use today.

As for int, it throws an exception, because there is no representation for infinity or NaN.

Henry

Srinivas Kumar
Ranch Hand
Posts: 52
My actual doubt is that floating point module zero also does divide by zero internally. So why Nan is getting printed instead of Infinity?