Subj : Re: Serious Problem with precision or if statement To : borland.public.cpp.borlandcpp From : =?iso-8859-1?Q?Jos=E9?= J. Armenta E. Date : Thu Aug 14 2003 01:09 am Hello: I compiled your code from the command line, with BCC and BCC32 and the 'equal' word is printed in the console. Then I did a very small project and compiled from the IDE, getting the result you got, 'not equal'. Currently I'm working in a POS app, and was getting strange behaviors related with floating point operations, and the solution I found to this issue was to use a variable instead a constant, as in the following code: int main() { int Phase = 3; double d=3; if(Phase/d == 1.0 ) printf("equal"); else printf("not equal"); return 1; } Using this workaround yield the expected result when compiled with the IDE or the command line (16/32 bits). HTH. /JJ. .