IfPointing value saved in variable and constant have not same data types. It's the difference in the precision of data types. If you change the datatype of f variable to double, it'll print equal, This is because constants in floating point-point stored in double and non floating-floating in long by default, doubledouble's precision is high and float has less precise, double value stored in 64 bit binary andhigher than float value stored in 32 bit binary,. it'll be completely clear if you see the method of floating point-point numbers conversion to binary conversion.conversion