В Текст | ": _ 1 _ | Форматировать |
Монадный случай дает стандартное (как в интерактивной сессии)
форматирование, выводящее минимум один пробел между столбцами. Например:]text=: ": i. 2 5 0 1 2 3 4 5 6 7 8 9 $ text 2 9 3 + text |domain error | 3 +text '*#' ,. text *0 1 2 3 4 #5 6 7 8 9 ": 'abcd' abcd $ ": '' 0 |
x":y производит текстовое представление y
в соответствии с форматом x . Каждый элемент
x есть комплексное
число w j. d , управляющее представлением
соответствующего столбца y следующим образом: |w указывает ширину стобца; если этого места недостаточно, в нем печатаются звездочки. Если w равно нулю, место выделяется автоматически. |d указывает число знаков после десятичной точки (включая ее, если d не равно нулю). Знак "минус" помещается перед первой цифрой. Если w>:0 и d>:0, столбец выравнивается вправо. Иначе, (если w<0 или d<0), результат выводится в экспоненциальной записи (с одной цифрой перед десятичной точкой) и выравнивается вдоль левого края по десятичной точке. Для комплексных y выводится только действительная часть. См. ниже для упакованных y . |
n ; 6j2 ": n=: % i. 2 4 +--------------------------+------------------------+ | _ 1 0.5 0.333333| _ 1.00 0.50 0.33| |0.25 0.2 0.166667 0.142857| 0.25 0.20 0.17 0.14| +--------------------------+------------------------+ (7j2 ": -n) ; (3j2 ": n) +----------------------------+------------+ | __ _1.00 _0.50 _0.33| _*********| | _0.25 _0.20 _0.17 _0.14|************| +----------------------------+------------+ 6j3 0j_6 ": 1r2 ^ 1 1000 *"1 i.5 2 1.000 9.332636e_302 0.250 8.128549e_904 0.063 7.079811e_1506 0.016 6.166381e_2108 0.004 5.370801e_2710Количество цифр после точки (для чисел с плавающей точкой) можно настроить (!.) и 9!:10 . Например:
(": ; ":!.6 ; ":!.4 ; ":!.15) %7 +--------+--------+------+-----------------+ |0.142857|0.142857|0.1429|0.142857142857143| +--------+--------+------+-----------------+Для упакованного правого аргумента двух-элементный левый аргумент указывает выравнивание содержимого, причем 0, 1, и 2 кодируют верх/центр/низ, и лево/центр/право. 9!:16 и 9!:17 задают выравнивание по умолчанию. 9!:6 и 9!:7 позволяют указать символы для отображения упаковок.
x=: 2 3 $ (2 #&.> 1+i.6) $&.> 'abcdef' (": x) ,. ' ' ,. (2 1 ": x) +----+-----+------+ +----+-----+------+ |a |bb |ccc | | | | ccc | | |bb |ccc | | | bb | ccc | | | |ccc | | a | bb | ccc | +----+-----+------+ +----+-----+------+ |dddd|eeeee|ffffff| | | |ffffff| |dddd|eeeee|ffffff| | |eeeee|ffffff| |dddd|eeeee|ffffff| |dddd|eeeee|ffffff| |dddd|eeeee|ffffff| |dddd|eeeee|ffffff| | |eeeee|ffffff| |dddd|eeeee|ffffff| | | |ffffff| |dddd|eeeee|ffffff| +----+-----+------+ +----+-----+------+