Hi Basant, Loss of precision! For floating point we can only have 7 significant digits. If you divide the ones that are printing we get: 0.99999994 This gets truncated to: 0.9999999 Which will yeild the different result after multiplication. If you were to use a double instead of a float the following would fail: 0, 49 and 98. This result is expected because for doubles we only get 16 significant digits. We get: 0.9999999999999999n where n is something other than 0 Truncates to 0.9999999999999999 which yields incorrect results upon multiplication. Regards, Manfred.