in reply to Numeric as hash key returns undef...

My guess would be that you are trying to get the value like this:
$foo = $hash{5.00};
which perl is interpreting as:
$foo = $hash{5};
What you want is this:
$foo = $hash{'5.00'};
To further illustrate, check what the following code does:
$hash{5} = "foo"; $hash{'5.00'} = "bar"; print $hash{5}, $hash{5.00}, $hash{'5.00'};

-driver8