Операторы отношения и пустые массивы

0 0 0

0 0 1

0 1 0

Операторы отношения и массивы

Операторы отношения

12 27 6

9 15 21

24 3 18

A

4 9 2

3 5 7

8 1 6

Арифметические операторы и массивы

Арифметческие операторы

Операторы

Операторы системы MATLAB делятся на три категории:

q Арифметические опреаторы, осуществляющие численные вычисления.

q Операции отношения, которые осуществляют численное сравнение операндов.

q Логические операторы, включающие AND (логическое И), OR (логическое ИЛИ), и NOT (логическое отрицание НЕ).

 

MATLAB обеспечивает следующие арифметические операторы

Операторы Описание
+ Сложение
- Вычитание
.* Умножение
./ Правое деление
.\ Левое деление
+ Унарный плюс (изменение знака объекта)
- Унарный минус
: Оператор двоеточия
.^ Степень
.’ Транспонирование
Комплексно-сопряженное транспонирование
* Матричное умнжение
/ Матричное правое деление
\ Матричное левое деление
^ Степень матрицы

 

За исключением некоторых матричных операторов, арифметические операторы MATLAB-а работают с соответствующими элементами массивов одинаковой размерности. Для векторов и прямоугольных массивов, оба операнда должны иметь одинаковый размер, или же один из них должен быть скаляром. Если один операнд является скаляром, а второй - нет, MATLAB применяет данный скаляр ко всем элементам второго операнда; данное свойство известно как скалярное расширение (scalar expansion).

Следующий пример иллюстрирует свойство скалярного расширения при вычислении произ-ведения скалярного опренда и матрицы

 

A = magic(3)

A =

Введем

что дает

ans =

 

MATLAB обеспечивает следующие операторы отношения

 

Операторы Описание
< Меньше чем
<= Меньше чем или равно
> Больше чем
>= Больше чем или равно
== Равно
~= Не равно

 

Операторы отношения в MATLAB-е сравнивают соответствующие элементы двух массивов с одинаковыми размерностями. Эти операторы всегда действуют поэлементно. В приведен-ном ниже примере, результирующая матрица показывает, где элемент матрицы A равен со-ответствующему элементу матрицыB.

 

A = [2 7 6; 9 0 5; 3 0.5 6];

B = [8 7 0; 3 2 5; 4 –1 7];

A == B

ans =

 

Для векторов и прямоугольных массивов, оба операнда должны иметь одинаковый размер или один из них должен быть скаляром. В случае когда один операнд является скаляром, а второй – нет , MATLAB проверяет данный скаляр с каждым элементом другого операнда. Те положение, где заданное отношение является истинным, принимают значение 1. Положение, где отношение является ложным, принимают значение 0.

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

 

A == [ ]

 

приводят к ошибке, если только массив Ане имеет размеры 0х0 или 1х1. Для проверки явля-ется ли данный массив пустым, следует использовать специальную функцию isempty(A).