printf "%-8.8s\n", sprintf '%8f', $_ for map{ 1.23456789 * $_} map{ "1e$_" } -10 .. 10;; 0.000000 0.000000 0.000000 0.000000 0.000001 0.000012 0.000123 0.001235 0.012346 0.123457 1.234568 12.34567 123.4567 1234.567 12345.67 123456.7 1234567. 12345678 12345678 12345678 12345678