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.
- : format ¶
-
: format
options¶ -
: format
(options)¶ -
:
[format, formatspacing, uppercase] =format ¶ -
Сбросить или указать формат вывода, генерируемый
dispи обычным механизмом вывода Octave.Эта команда влияет только на отображение чисел, а не на то, как они хранятся или вычисляются. Чтобы изменить внутреннее представление с двойного значения по умолчанию, используйте одну из функций преобразования, таких как
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 = +.- -.+
- bank
-
Выводить переменную в формате, подходящем для валюты (формат с фиксированной точкой и двумя знаками после десятичной точки). Отображается только действительная часть переменной, так как мнимая часть не имеет смысла для валюты.
- bit
-
Выводить двоичное представление чисел в памяти, всегда начиная с самого старшего бита. Например,
piотображается так:0 10000000000 1001001000011111101101010100010001000010110100011000
где пробелы добавлены для наглядности, чтобы показать бит знака, 11-битный показатель степени и 52-битный мантиссу в указанном порядке. Вместе они представляют
piкак число с плавающей точкой двойной точности IEEE 754 в нормальной форме. Для чисел с плавающей точкой одинарной точности аналогично. - native-bit
-
Выводить двоичное представление чисел, как они хранятся в памяти. Для машин с порядком байт «большая эндианность» это идентично представлению
format bitвыше. Для машин с порядком байт «маленькая эндианность» будут выведены байты в обратном порядке, хотя биты внутри байта по-прежнему будут представлены с наиболее значимым битом слева.Например, значение
piв этом формате на x86-64:00011000 00101101 01000100 01010100 11111011 00100001 00001001 01000000
показано здесь с добавленными пробелами для большей наглядности. Сравните со строкой битов из
format bitчтобы увидеть группировку в байты и их порядок. - hex
-
То же, что и
format bitвыше, за исключением того, что биты сгруппированы по четыре в шестнадцатеричные цифры для краткости. Таким образом,piпредставляется как:400921fb54442d18
- native-hex
-
То же, что и
format native-bitвыше, за исключением того, что биты сгруппированы по четыре в шестнадцатеричные цифры для краткости. Таким образом,piна x86-64 представляется как:182d4454fb210940
- 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/v9.2.0/Terminal-Output.html