Re: float
ratheesh k <[email protected]> Tue, 11 Jan 2011 14:04:26 +0530
| Newsgroups | org.kernel.vger.linux-c-programming |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Jan 11, 2011 at 1:31 PM, Thomas Weber <[email protected]> wrote: > Okay, now I got it. > > Look for IEEE754. > > 0.1 is in double precision 0.10000000149011612 > > Thomas > Is it possible to print the correct "printf" statement by typecasting some of operations or data types. I tried with no success. -Ratheesh > Am 11.01.2011 08:55, schrieb Uriel Corfa: >> I'd say : rounding errors. Floating point goes in mysterious ways. >> >> On Tue, Jan 11, 2011 at 8:38 AM, ratheesh k <[email protected]> wrote: >>> I could not understand why it getting printed like this. Could any >>> body tell me. >>> >>> #include <stdio.h> >>> >>> int main() >>> { >>> float f=0.0f; >>> int i; >>> >>> for(i=0;i<10;i++) >>> f = f + 0.1f; >>> >>> if(f == 1.0f) >>> printf("f is 1.0 \n"); >>> else >>> printf("f is NOT 1.0\n"); >>> >>> return 0; >>> } >> > -- To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html