while(<STDIN>)
{
$i = $_;
chomp($i);
unless($i)
{last}
$o = eval($i);
printf ("the answer is %.3g", $o);
# $o = output answer $i = input
}
if you type 10000/3 you get "the answer is 3.33e+003"
what can i do so that there are no unecessary 0s in the exponent?
[edited by: phranque at 10:17 pm (utc) on July 22, 2008]
[edit reason] disabled smileys ;) [/edit]
The correct answer, I believe, is no.
Note that the number of exponent digits in the scientific notation produced by %e, %E, %g and %G for numbers with the modulus of the exponent less than 100 is system-dependent: it may be three or less (zero-padded as necessary). In other words, 1.23 times ten to the 99th may be either "1.23e99" or "1.23e099".
[search.cpan.org...]
(The format arguments for printf are explained in sprintf.)
and would that mean that the formatting printed locally in the command line window might be different from the formatting printed by a server hosting a web page?
Rudy
After all, PERL stands for: Practical Extraction (and) Reporting Language