my @si = qw"T G M k * m u n p";
$si[4] = '';
sub normalize {
my $a = shift;
my ($number, $exponent) = $a =~ /(.*)e?(.*)/;
while ($number >= 1000) {
$number /= 1000;
$exponent += 3;
}
while ($number and ($number < 1)) {
$number *= 1000;
$exponent -= 3;
}
return ($a,'') unless $exponent;
while (1) {
return ($number, @si[4 - $exponent/3]) unless ($exponent % 3);
$number *= 10;
$exponent -= 1;
}
}
my $a = 1e-7;
my ($number, $exponent) = normalize($a);
print " $a = $number $exponent\n";
$a = 1e7;
($number, $exponent) = normalize($a);
print " $a = $number $exponent\n";
$a = 10000;
($number, $exponent) = normalize($a);
print " $a = $number $exponent\n";
$a = 0;
($number, $exponent) = normalize($a);
print " $a = $number $exponent\n";
$a = 1000;
($number, $exponent) = normalize($a);
print " $a = $number $exponent\n";
- Fl�vio Soibelmann Glock
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]