Начальный ноль означает восьмеричную константу, поэтому, когда вы выполняете
my $x = 00.05;
, вы фактически выполняете конкатенацию строк двух восьмеричных чисел:
my $x = 00 . 05; # The same as "0" . "5"
, что дает вам строку "05"
и позже вы сделаете
print $x * 100.0; # prints 500
, поскольку perl
интерпретируется как "05"
как число 5