in reply to Deleting trailing 0's after using sprintf

I'd use :
$percent_change = 0+sprintf "%.3f", $percent_change;

.02

cLive ;-)