Welcome to the Java Programming Forums

The professional, friendly Java community. 21,500 members and growing!

The Java Programming Forums are a community of Java programmers from all around the World. Our members have a wide range of skills and they all have one thing in common: A passion to learn and code Java. We invite beginner Java programmers right through to Java professionals to post here and share your knowledge. Become a part of the community, help others, expand your knowledge of Java and enjoy talking with like minded people. Registration is quick and best of all free. We look forward to meeting you.

>> REGISTER NOW TO START POSTING

# Thread: What would be the smallest positive float (epsilon) such that 1.0 + epsilon != 1.0f?

1. ## What would be the smallest positive float (epsilon) such that 1.0 + epsilon != 1.0f?

What would be the smallest positive float (epsilon) such that 1.0 + epsilon != 1.0f?
What is the condition that I have to use to attain this?

2. ## Re: machine epsilon

Ok I figured how to do that.

Next question, how do I convert float and double data types to binary. For float, ive used the function
`Integer.toBinaryString(Float.floatToRawIntBits(value));`

But the answer doesnt seem to be right.

3. ## Re: machine epsilon

Anybody. I just need to know to convert a float into binary. Not the code.

4. ## Re: machine epsilon

Originally Posted by rosh72851
Ok I figured how to do that.

Next question, how do I convert float and double data types to binary. For float, ive used the function
`Integer.toBinaryString(Float.floatToRawIntBits(value));`

But the answer doesnt seem to be right.
The above code is what you need to convert a float to binary. I'm not sure why this is not working for you?

Also, take a look at:

Float.parseFloat]Float (Java 2 Platform SE v1.4.2)()

5. ## Re: machine epsilon

If I input a value of 1 into the function: Integer.toBinaryString(Float.floatToRawIntBits(val ue));

I get the solution as 111111100000000000000000000000. which is definitely wrong.

If someone can tell me manually how to convert a decimal number into a decimal binary, I can manually code it.

6. ## Re: machine epsilon

This is how to convert int to Binary:

```public class Class1 {

public static void main(String[] args) {

int myInt = 1;
System.out.println(Integer.toBinaryString(myInt));
}
}```

7. ## Re: machine epsilon

Originally Posted by rosh72851
But the answer doesnt seem to be right.
What makes you think so? What should it look like?

A Java float is a single-precision 32-bit format IEEE 754 value (see IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Standard 754-1985). That's probably what you're seeing.