MATLAB: Single versus double precision, what’s going on here

doubleprecisionsingle

Why does: >> 14+18300+200000+5000000+550000000
ans =
555218314
But: >> single(14)+single(18300)+single(200000)+single(5000000)+single(550000000)
ans =
555218304
Am I missing something? Thanks!

Best Answer

Hint--(a very large one :) )
single(550000000)+single(5000000)+single(200000)+single(18300)
ans = ???