The numbers have maximum 2 digits.
The code is just for debugging, extracting the problem from a larger code, to have some small code to play. In the original code all sums are stored in an array and used later. Therefore printf is only a solution for the small debug code.
You need the round. The effect is much more seldom when using *100, but still exists. Please see:
print "$_ => ".$x/100 ."\n";
34455.28 => 34455.28
-33907.55 => 547.729999999995