version 1.64, 2003/06/24 20:41:56
|
version 1.68, 2003/10/23 13:56:07
|
Line 490 sub format {
|
Line 490 sub format {
|
my ($value,$fmt)=@_; |
my ($value,$fmt)=@_; |
my $dollarmode; |
my $dollarmode; |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
|
$fmt=~s/e/E/g; |
my $result=sprintf('%.'.$fmt,$value); |
my $result=sprintf('%.'.$fmt,$value); |
$result=~s/(E[+-]*)0/$1/; |
$result=~s/(E[+-]*)0/$1/; |
if ($dollarmode) {$result=&dollarmode($result);} |
if ($dollarmode) {$result=&dollarmode($result);} |
Line 502 sub prettyprint {
|
Line 503 sub prettyprint {
|
my $dollarmode; |
my $dollarmode; |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
if ($fmt =~ /^\$(.*)/) { $fmt=$1; $dollarmode=1; } |
if ($fmt) { $value=sprintf('%.'.$fmt,$value); } |
if ($fmt) { $value=sprintf('%.'.$fmt,$value); } |
if ($value =~ /([0-9\.\-\+]+)E([0-9\-\+]+)/ ) { |
if ($value =~ /([0-9\.\-\+]+)E([0-9\-\+]+)/i ) { |
my $frac=$1; |
my $frac=$1; |
if ($dollarmode) { $frac=&dollarformat($frac); } |
if ($dollarmode) { $frac=&dollarformat($frac); } |
my $exponent=$2; |
my $exponent=$2; |
$exponent=~s/^\+0*//; |
$exponent=~s/^\+0*//; |
$exponent=~s/^-0*/-/; |
$exponent=~s/^-0*/-/; |
|
$exponent=~s/^-0*/-/; |
|
if ($exponent eq '-') { undef($exponent); } |
if ($exponent) { |
if ($exponent) { |
if ($external::target eq 'web') { |
if ($external::target eq 'web') { |
$result=$frac.'×10<sup>'.$exponent.'</sup>'; |
$result=$frac.'×10<sup>'.$exponent.'</sup>'; |