Serial.print for floating numbers

The 'current' that you print is not the same 'current' that you calculate. The calculated 'current' is a local variable, only in scope inside the 'for' loop.