Константы. формат вывода числовых данных.

Константа (постоянная) – это предварительно определенное числовое

или символьное значение, представленное уникальным именем (идентификатором). Числа, т.е. простейшие объекты М-языка, представляющие количественные данные, являются безымянными числовыми константами (в памяти компьютера числовые данные представлены вещественными или комплексными значениями типа double).

Существуют различные способы отображения чисел на экране монитора. Прежде всего, отметим, что можно вообще не отображать результат выполнения команды в командном окне – для этого достаточно соответвующую команду закончить точкой с запятой (т.е. символом «;»). Такой режим особенно удобен в тех случаях, когда требуется выполнять громоздские промежуточные расчеты, которые, с одной стороны, необходимы для получения конечного результата, а с другой – загромождают командное окно (поэтому разумный выход – это скрытие результатов выполнения команд).

Числовой формат задается с помощью команды format, в которой после ключевого слова format указывается применяемый формат. Некоторые допустимые форматы с кратким описанием представлены в таблице 1.2. Формат используется по умолчанию.

Таблица 1.2. Некоторые числовые форматы (для команды format).

Формат Описание
short Формат отображения числовых данных, при котором после десятичной точки отображается четыре цифры (формат данных с фиксированной точкой). Формат используется по умолчанию.
long Числовой формат, при котором после десятичной точки отображается 7, 14 и 15 цифр в зависимости от типа числовых данных (формат данных с фиксированной точкой).
short e Формат отображения числовых данных с мантиссой и показателем степени, при котором после десятичной точки отображается четыре цифры (формат данных с плавающей точкой).
long e Числвоой формат отображения с мантиссой и показателем степени, при котором после десятичной точки отображается 7, 14 и 15 цифр в зависимости от типа числовых данных (формат данных с плавающей точкой).
short g В зависимости от значения для отображения применяется либо формат с плавающей точкой, либо с фиксированной точкой. После десятичной запятой отображается четыре цифры.
long g В зависимости от значения для отображения применяется либо формат с плавающей точкой, либо с фиксированной точкой. После десятичной запятой отображается 7, 14 или 15 цифр.
short eng Инженерный формат с четырьмя отображаемыми цифрами после десятичной точки и показателем степени, кратным трем.
long eng Инженерный формат с 7, 14 и 15 отображаемыми цифрами после десятичной точки и показателем степени, кратным трем.
+ Формат, при котором для положительных чисел отображается знак «+», для отрицательных отображается знак «-», а для нуля оторажается пробел.
bank Финансовый формат, при котором после десятичной точки отображается две цифры.
rat Отображение чисел в виде рациональной дроби
compact Режим отображения результатов вычислений в компактной форме, с уменьшенными интервалами между строками.
loose Режим отображения результатов вычислений с увеличенными интервалами между строками. Используется по умолчанию.


Ниже приведены примеры отображения числа 11/6 в разных форматах (в режиме командной строки):

>> x=11/6 x = 1.8333 >> format short e >> x x = 1.8333e+00 >> format long >> x x = 1.833333333333333 >> format long e >> x x = 1.833333333333333e+00 >> format long eng >> x x = 1.83333333333333e+000 >> format bank >> x x = 1.83 >> format rat >> x x = 11/6 >> format + >> x x = +

Заметим, что в MATLAB существуют и иные способы изменения формата выводимых данных, построенные на базе функции sprintf.

Системные переменные.

Другие виды констант (помимо рассмотренных выше безымянных) в системе MATLAB принято называть системными переменными, поскольку с одной стороны, они задаются системой при ее загрузке, а с другой – могут переопределяться. Основные системные переменные, применяемые в системе MATLAB, перечислены ниже:

i или j – мнимая единица (квадратный корень из числа -1);

pi – число константы. формат вывода числовых данных. - student2.ru (см., например, рис. 1.1.2);

eps – погрешность операций над числами с плавающей точкой ( константы. формат вывода числовых данных. - student2.ru );

realmin – наименьшее число с плавающей точкой ( константы. формат вывода числовых данных. - student2.ru );

realmax – наибольшее число с плавающей точкой ( константы. формат вывода числовых данных. - student2.ru );

inf – значение машинной бесконечности;

ans – переменная, хранящая результат последней операции и обычно вызывающая его отображение на экране монитора (см. рис. 1.1.2);

NaN – указание на нечисловой характер данных (Not-a-Number; неопределенность).

Итак, имеем (в режиме командной строки):

>> eps ans = 2.2204e-16 >> realmin ans = 2.2251e-308 >> realmax ans = 1.7977e+308 >> 5/0 ans = Inf >> 0/0 ans = NaN

Следует еще раз отметить, что системные переменные могут переопределяться. Так, можно задать системной переменной eps иное значение, например, eps=0.001. Тем не менее, значения системных переменных по умолчанию задаются сразу после загрузки системы, в связи с чем системные переменные, в отличие от обычных переменных, никогда не могут быть неопределенными.

Символьная константа – это цепочка (последовательность) символов, заключенных в апострофы, например (в режиме командной строки):

>> 'Пример символьной константы' ans = Пример символьной константы >> 'Hello' ans = Hello >> '5+5+7' ans = 5+5+7

Отметим, что даже если в апострофы заключается математическое выражение, оно не вычисляется и рассматривается просто как цепочка символов. В частности, в последнем примере '5+5+7' не будет возвращать число 17. Вместе с тем, с использованием специальных функций преобразования символьные выражения могут быть преобразованы в вычисляемые.

Переменные.

Переменные – это имеющие имена объекты, способные хранить некоторые, обычно разные по значению, данные (распространные объекты как в математике, так и в программировании). В общем смысле переменная – это область памяти, к которой можно обратиться

В большинстве языков программирования (например, в C/C++, Pascal, Java и др.) для использования переменной необходимо ее предварительно объявить, указав при этом к какому типу она относится. В MATLAB подобное делать не нужно, переменной можно сразу присваивать значение.

Для задания переменным определенных значений в M-языке используется операция присваивания, вводимая знаком равенства: ):

Имя_переменной = Выражение

Так, например, имеем (в режиме командной строки):

>> a=5 a =

Типы переменных заранее не декларируются, а определяются выражением, значение которого присваивается переменной.

Имя переменной (идентификатор переменной) может содержать сколь угодно символов, однако запоминается и идентифицируется лишь 31 начальный символ. Имя любой переменной не должно совпадать с именами других переменных, функций и процедур системы (иными словами, имя переменной должно быть уникальным). Имя должно начинаться с буквы английского алфавита, может содержать буквы английского алфавита, цифры и символы подчеркивания ( _ ). Запрещается включать в имена переменных пробелы и специальные символы (например +, _, *, / и т.д.). Некоторые специалисты рекомендуют использовать содержательные имена для обозначений переменных, например displ_1 для переменной, обозначающей перемещение первой точки.

Отметим, что в системе MATLAB могут использоваться символьные переменные, причем соответствующие символьные выражения заключаются в апострофы, например (в режиме командной строки):

>> c='Sample' c = Sample

Наши рекомендации