when i make this multiplication
0.94 * 8700
the output is
8177.999999999999
but i
The specific reason in your case is that the real number 0.94 cannot be represented exactly in a double precision floating point. When you type 0.94, the actual number stored is 0.939999999999999946709294817992486059665679931640625.
0.94
0.939999999999999946709294817992486059665679931640625