Node:Printing Numeric Literals, Previous:Numeric Literals, Up:Numeric Literals

Printing Numeric Literals

As with string literals, you can also use the print function in Perl to print numerical literals. Consider this program:

     use strict;
     use warnings;
     print 2E-4, ' ', 9.77E-5, " ", 100.00, " ", 10_181_973, ' ', 9.87E9,
           " ", 86.7E14, "\n";
which produces the output:
     0.0002 9.77e-05 100 10181973 9870000000 8.67e+15

First of all, we have done something new here with print. Instead of giving print one argument, we have given it a number of arguments, separated by commas. Arguments are simply the parameters on which you wish the function to operate. The print function, of course, is used to display whatever arguments you give it.

In this case, we gave a list of arguments that included both string and numeric literals. That is completely acceptable, since Perl can usually tell the difference! The string literals are simply spaces, which we are using to separate our numeric literals on the output. Finally, we put the newline at the end of the output.

Take a close look at the numeric literals that were output. Notice that Perl has made some formatting changes. For example, as we know, the _'s are removed from 10_181_973. Also, those decimals and large integers in exponential notation that were relatively reasonable to expand were expanded by Perl. In addition, Perl only printed 100 for 100.00, since the decimal portion was zero. Of course, if you do not like the way that Perl formats numbers by default, we will later learn a way to have Perl format them differently (see Output of Scalar Data).