| | Floating ponts ??
|
|
Hello everybody I am writing a program that uses floats, but I have some problems. If I write /******/ float p; p = 0.3; if(p == 0.4) do something; /******/ The if statement evaluates to true. Is there anything special I have to do to use floats in (...) (24 years ago, 3-May-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: Floating ponts ??
|
|
(...) I can't check this out now, but keep e-mailing me until I do. -Kekoa kekoa@graphics.stanford.edu (24 years ago, 4-May-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: Floating ponts ??
|
|
(...) Double check the actual program you are test to make sure that you don't have: p = 0.4 /* Only one = */ This is the number one "c" typo and is easy to overlook Lester been there, done that (24 years ago, 4-May-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: Floating ponts ??
|
|
Hi there! (...) 0th law of computer science: NEVER use == on floats; it simply doesn't work as expected. In most cases a value cannot be exactly represented as a float variable; so MOST comparisons for equality WILL fail. (this is NOT an issue of (...) (24 years ago, 17-May-01, to lugnet.robotics.rcx.legos)
|
|
| | Re: Floating ponts ??
|
|
(...) Exceptions to the 0th law: You are manipulating and comparing floating-point values you know are integers with a magnitude less than a million or two. You are manipulating and comparing values you know are integer multiples of some power of (...) (24 years ago, 17-May-01, to lugnet.robotics.rcx.legos)
|