unusual output from pow
The following C code int main(){ int n=10; int t1=pow(10,2); int t2=pow(n,2); int t3=2*pow(n,2); printf("%d\n",t1); printf("%d\n",t2); printf("%d\n",t3); return (0); } gives the following output 100 99 199 I am using a devcpp compiler. It does not make any sense, right? Any ideas? (That pow(10,2) is maybe something like 99.9999 does not explain the first output. Moreover, I got the same output even if I include math.h) You are using a poor-quality math library. A good math library returns exact results for values that are exactly representable. Generally, math library routines must be