cinema 4d is calculating it correctly , but it don't display it ...
How did I know this ?
well , lets make an example ....
create a cube and set the scale to 200 cm
and copy and paste , and make the copy scale 200.0000000000004 (c4d will display it as 200 , btw , this is the maximum digits after comma count that c4d will consider -13-)
now select both cubes , you will see c4d put "Multiple Values " in the scale boxes , which mean c4d is keeping the accurate values .
need another example ?
create an xpresso tag , add a compare node , 2 constant nodes and result node .
make the first constant node 200
and the other one 200.0000000000004
and link them to the compare node (make sure it is set to = )
now output the the compare node to the result node , the result will be 0 , which means they are not equal .
now set the 2 constant nodes to 200 the result will be 1 , which means they are equal .
now set the 2 constant nodes to 200.0000000000004 the result will be 1 , which means they are equal .
I think this is enough to rest assured about the internal calculations in c4d :D