in reply to decimal precision

You can use

$o=sprintf "%10.4e",$o; print "$o\n";
to round up the value of $o at 5 significant digits. The result is:

1.4100e-03 1.9881e-06 2.8032e-09 3.9525e-12 5.5730e-15 7.8579e-18 1.1080e-20 1.5623e-23 2.2028e-26 3.1059e-29 4.3793e-32

If you don't like it to be in scientific notation you can add a $o+=0; between the two lines to force the value back to numeric:

0.00141 0.0000019881 0.0000000028032 0.0000000000039525 0.000000000000005573 0.0000000000000000078579 0.00000000000000000001108 0.000000000000000000000015623 0.000000000000000000000000022028 0.000000000000000000000000000031059 0.000000000000000000000000000000043793

Careful with that hash Eugene.