>>  <<  Usr  Pri  JfC  LJ  Phr  Dic  Rel  Voc  !:  Help  Dictionary

13. Format

A numeric table such as:
   ]t=:(i.4 5)%3
      0 0.333333 0.666667       1 1.33333
1.66667        2  2.33333 2.66667       3
3.33333  3.66667        4 4.33333 4.66667
      5  5.33333  5.66667       6 6.33333
can be rendered more readable by formatting it to appear with a specified width for each column, and with a specified number of digits following the decimal point. For example:
   ]f=: 6j2 ": t
  0.00  0.33  0.67  1.00  1.33
  1.67  2.00  2.33  2.67  3.00
  3.33  3.67  4.00  4.33  4.67
  5.00  5.33  5.67  6.00  6.33
The real part of the left argument of the format function specifies the column width, and the imaginary part specifies the number of digits to follow the decimal point.

Although the formatted table looks much like the original table t , it is a table of characters, not of numbers. For example:

   $t
4 5

   $f
4 30

   +/t
10 11.3333 12.6667 14 15.3333

   +/f
|domain error
|       +/f 
However, the verb do or execute (".) applied to such a character table yields a corresponding numeric table:

   ". f
   0 0.33 0.67    1 1.33
1.67    2 2.33 2.67    3
3.33 3.67    4 4.33 4.67
   5 5.33 5.67    6 6.33
  
   +/ ". f
10 11.33 12.67 14 15.33

Exercises

13.1   Using the programs defined in Section 12, experiment with the following expressions:
5j2 ": d=: %: i.12
5j2 ":,.d
fc=: 5j2&":@,. 
fc d
20 (fc@h3 ,. h5) d
20 (fc@h3 ,. '|'&,.@h5) d
plot=: fc@h3,.'|'&,.@h5
20 plot d



>>  <<  Usr  Pri  JfC  LJ  Phr  Dic  Rel  Voc  !:  Help  Dictionary