Операторы отношения и пустые массивы
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).