14.1.1 Вывод в терминал
Поскольку Octave обычно выводит значение выражения сразу после его вычисления, простейшей из всех функций ввода-вывода является простое выражение. Например, следующее выражение отобразит значение ‘pi’
pi
-| ans = 3.1416 Это работает хорошо, пока приемлемо, чтобы имя переменной (или ‘ans’) выводилось вместе со значением. Чтобы вывести значение переменной без вывода её имени, используйте функцию disp.
Команда format предоставляет некоторый контроль над способом вывода значений Octave с disp и через обычный механизм вывода.
- : disp (x) ¶
- : str = disp (x) ¶
-
Отобразить значение x.
Например:
disp ("The value of pi is:"), disp (pi) -| the value of pi is: -| 3.1416Обратите внимание, что вывод из
dispвсегда заканчивается новой строкой.Если запрашивается значение вывода,
dispничего не выводит и возвращает отформатированный вывод в строке.См. также: fdisp.
- : str = list_in_columns (arg, width, prefix) ¶
-
Возвращает строку, содержащую элементы arg, перечисленные в столбцах с максимальной шириной width и необязательным префиксом prefix.
Аргумент arg должен быть массивом ячеек символьных строк или символьной матрицей.
Если width не указан или является пустой матрицей, или меньше или равен нулю, используется ширина экрана терминала. Символы новой строки используются для разрыва строк в выходной строке. Например:
list_in_columns ({"abc", "def", "ghijkl", "mnop", "qrs", "tuv"}, 20) ⇒ abc mnop def qrs ghijkl tuv whos ans ⇒ Variables in the current scope: Attr Name Size Bytes Class ==== ==== ==== ===== ===== ans 1x37 37 char Total is 37 elements using 37 bytesСм. также: terminal_size.
- : [rows, cols] = terminal_size () ¶
- : terminal_size ([rows, cols]) ¶
-
Запрос или установка размера окна терминала. Если вызвана без аргументов, возвращает двухэлементный строковый вектор, содержащий текущий размер окна терминала в символах (строки и столбцы). Если вызвана с двухэлементным вектором целочисленных значений, устанавливает размер терминала и возвращает предыдущее значение. Ручная установка размера не должна потребоваться при использовании readline для редактирования командной строки.
См. также: list_in_columns.
- : формат ¶
- : формат параметры ¶
- : формат (параметры) ¶
- : [формат, интервал, заглавные] = формат ¶
-
Сбросить или указать формат вывода, производимого
dispи обычным механизмом вывода Octave.Эта команда влияет только на отображение чисел, а не на то, как они хранятся или вычисляются. Для изменения внутреннего представления из значения по умолчанию double используйте одну из функций преобразования, таких как
single,uint8,int64, и т.д. Любыеformatпараметры, которые изменяют количество отображаемых значащих цифр, также будут отражены функциейoutput_precision.По умолчанию Octave отображает 5 значащих цифр в удобочитаемой форме (формат ‘short’, формат ‘lowercase’, и формат ‘loose’ для матриц). Если
formatвызывается без параметров или параметр ‘default’ указан, то восстанавливается этот формат по умолчанию.Допустимые параметры формата для чисел с плавающей запятой приведены в следующей таблице.
default-
Восстановить состояние формата по умолчанию, описанное выше.
short-
Формат с фиксированной точкой с 5 значащими цифрами (по умолчанию).
long-
Формат с фиксированной точкой с 16 значащими цифрами.
Как и в формате ‘short’, Octave переключится на экспоненциальный формат ‘e’, если не сможет должным образом отформатировать матрицу с помощью текущего формата.
shortelonge-
Экспоненциальный формат. Представляемое число разбивается на мантиссу и экспоненту (степень 10). Мантисса имеет 5 значащих цифр в формате short. В формате long значения double отображаются с 16 значащими цифрами, а значения single отображаются с 8. Например, в формате ‘shorte’
piотображается как3.1416e+00. Дополнительно, заключительное ‘e’ может быть разделено на второй аргумент. shortglongg-
Оптимальный выбор между форматом с фиксированной точкой и экспоненциальным форматом, основанный на величине числа. Например, в формате ‘shortg’
pi .^ [2; 4; 8; 16; 32]отображается какans = 9.8696 97.409 9488.5 9.0032e+07 8.1058e+15Дополнительно, заключительное ‘g’ может быть разделено на второй аргумент.
shortenglongeng-
Идентично ‘shorte’ или ‘longe’, но отображает значение в инженерном формате, где экспонента делится на 3. Например, в формате ‘shorteng’
10 * piотображается как31.416e+00. Дополнительно, заключительное ‘eng’ может быть разделено на второй аргумент. freenoneВывод в свободном формате без попыток выравнивания столбцов матриц по десятичной точке. Это сырой формат, эквивалентный коду C++
std::cout << variable. В общем случае, результат представляет собой представление с 6 значащими цифрами, где подавляется ненужная точность (такая как хвостовые нули для целых чисел). Комплексные числа форматируются как числовые пары, например, ‘(0.60419, 0.60709)’, а не как ‘0.60419 + 0.60709i’.
Следующие форматы влияют на весь числовой вывод (числа с плавающей запятой и целые типы).
"+""+""chars"plusplus chars-
Печать символа ‘+’ для элементов матрицы, больших нуля, символа ‘-’ для элементов, меньших нуля, и пробела для нулевых элементов матрицы. Этот формат может быть полезен для проверки структуры разреженности большой матрицы. Для очень больших матриц функция
spy, которая строит диаграмму разреженности, будет более понятна.Необязательный аргумент chars указывает список из 3 символов для печати значений, больших нуля, меньших нуля и равных нулю. Например, при формате
"+" "+-.", матрица[1, 0, -1; -1, 0, 1]отображается какans = +.- -.+
- валюта
-
Вывод переменной в формате, подходящем для валюты (формат с фиксированной точкой с двумя цифрами справа от десятичной точки). Выводится только вещественная часть переменной, так как мнимая часть не имеет смысла для валюты.
- native-hex
-
Вывод шестнадцатеричного представления чисел так, как они хранятся в памяти. Например, на рабочей станции, которая хранит вещественные значения размером 8 байт в формате IEEE с наименее значимым байтом первым, значение
piпри выводе в форматеnative-hexравно400921fb54442d18. - hex
-
То же, что и
native-hex, но всегда выводится самый значимый байт первым. - native-bit
-
Вывод битового представления чисел, как они хранятся в памяти. Например, значение
piравно01000000000010010010000111111011 01010100010001000010110100011000
(показано здесь в двух 32-битных разделах для целей верстки) при выводе в формате native-bit на рабочей станции, которая хранит 8-байтовые вещественные значения в формате IEEE с наименее значимым байтом первым.
- bit
-
То же, что и
native-bit, но всегда выводится самый значимый бит первым. - rat
Вывод рационального приближения, т.е. значения приближаются как отношение небольших целых чисел. Например, в формате ‘rat’
piотображается как355/113.
Два следующих параметра влияют на отображение научной и шестнадцатеричной нотаций.
lowercase (default)-
Используйте строчную ‘e’ для символа экспоненты в научной нотации и строчные ‘a-f’ для шестнадцатеричных цифр, представляющих 10-15.
uppercaseИспользуйте заглавную ‘E’ для символа экспоненты в научной нотации и заглавные ‘A-F’ для шестнадцатеричных цифр, представляющих 10-15.
Два следующих параметра влияют на отображение всех матриц.
compact-
Удалить пустые строки вокруг меток номера столбца и между матрицами, что приводит к более компактному выводу с большим количеством данных на странице.
loose (default)Вставить пустые строки над и под метками номера столбца и между матрицами для создания более читаемого вывода с меньшим количеством данных на странице.
Если
formatвызывается с несколькими конкурирующими параметрами, используется самый правый, за исключением ‘default’, который переопределяет все другие параметры. В случае ошибки формат остается без изменений.Если вызвана с одним до трёх выходных аргументов и без входных данных, возвращается текущий формат, интервал и предпочтение заглавных букв. Указание как выходных, так и входных данных приведет к ошибке.
См. также: fixed_point_format, output_precision, split_long_rows, print_empty_dimensions, rats.
© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v8.1.0/Terminal-Output.html