Somando valores quebrados com mais precisão:
Ex.: 1.95 + 13.00 = "14" (se fizer essa conta no perl ele vai falar que é esse o resultado ...

$total =~ s/\.//ig; # Converte para Nº inteiro (1.90 = 190)
$somacerta=$somacerta+$total; # Aqui pode-se usar no meio do while, for, do ... (soma de vários valores)
$somacerta=$somacerta/100; # Converte para decimal (190 / 100 = 1.9)
Depois é só formatar como no exemplo abaixo
Formatando um resultado:
Ex.: TOTAL = 10.5 para R$ 10,50
if($total =~ /\./){ # Se o total contiver "."
___($reais,$centavos) = split(/\./, $total); # Cria o formato
___if($centavos <= "9"){ $total="$reais,$centavos 0"; $total =~ s/ //ig; } # Se o centavo possuir 1 casa adiciona o 0 no final
___else{ $total =~ s/\./\,/ig; } # Senão troca o "." por ","
}
elsif($total !~ /\./){ $total="$total,00"; } # Se for um Nº inteiro, adiciona o ,00
($reais,$centavos) = split(/\,/, $total); # Verifica e arruma os erros da anterior
$centavos = substr($centavos,0,2); # Se vier quebrado fica só com 2 casas
$total="$reais,$centavos"; # Guarda de volta na variável
OBS.: "_" = Espaçamento ou alinhamento (pra facilitar o entendimento do código e não ficar muito bagunçado e fácil de se achar nas funções)