in reply to Determining when Math::BigFloat is necessary?

Sounds like you want to find the largest and smallest floats representable by regular perl. Here's an easy way:
my $i = 1.0; my $lasti; for (;;) { $lasti = $i; $i *= 2; print $i,"\n"; last if ($i == $lasti); }
The last number before "inf" is your largest representable float (8.98846567431158e+307 on my system).

A similar trick with division by 2 will give you the smallest representable float (4.94065645841247e-324 on my system).

Update: Basing the decision on the number of digits of precision in the range will not work in general. For example all the numbers could be from 0 to 1 but if you require 50 digits of precision you should use BigFloat.