rounding errors are when the number that is stored is not exactly the number expected
This error occurs because decimal numbers may not have an exact representation in binay.
Example: 0.210 = 0.0011001100110011001100110011001100110011...2
Because the number has to be truncated, as computers have a finite capacity for storage, the rounding error occurs.
if the example 0.210 is held in 16 bits, the value becomes 0.0011001100110012, and multiplying the number by 510, it will become 0.1111111111111012, instead of 1.0000000000000002, and comparing 0.210 * 510 to 1 would result in inequality, because of the rounding error