Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


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




Арифметические операторы являются самыми распространенными и известными. В отличие от большинства языков программирования в системе MATLAB практически все операторы являются матричными, т. е. предназначены для выполнения операций над матрицами. В табл. 8.1 приводится список арифметических операторов и синтаксис их применения.

Таблица 8.1. Арифметические операторы и функции MATLAB

  Функция Название Оператор Синтаксис
  Plus Плюс + М1+М2
  Uplus Унарный плюс +
  Minus Минус М1-М2
  Uminus Унарный минус
  Mtimes Матричное умножение * М1*М2
  Times Поэлементное умножение массивов.* А1*А2
  Mpower Возведение матрицы в степень М1^х
  Power Поэлементное возведение массива в степень А1^х
  Mldivide Обратное (справа налево) деление матриц \ M1\M2
  Mrdivide Деление матриц слева направо / М1/М2
  Ldivide Поэлементное деление массивов справа налево. \ А1.\А2
  Rdivide Поэлементное деление массивов слева направо. / А1. /А2
  Kron Тензорное умножение Кронекера kron kron(X.Y)
       

>> m1=[2 6 3; 5 8 -3]

m1 =

2 6 3

5 8 -3

>> m2=[7 6 10; -5 6 -5]

m2 =

7 6 10

-5 6 -5

>> m2-m1

ans =

5 0 7

-10 -2 -2

>> minus(m2,m1)

ans =

5 0 7 // результат одинаковый

-10 -2 -2

 

 

Обратите внимание на то, что каждый оператор имеет аналогичную по назначению функцию. Например, оператору матричного умножения * соответствует функция mtimes(Ml,M2). Примеры применения арифметических операторов уже не раз приводились, так что ограничимся несколькими дополнительными примерами:

Соответствие функций операторам и командам в системе MATLAB является одним из основных положений программирования. Оно позволяет одновременно использовать элементы как операторного, так и функционального программирования.

Следует отметить, что в математических выражениях операторы имеют определенный приоритет исполнения. Например, в MATLAB приоритет логических операторов выше, чем арифметических, приоритет возведения в степень выше приоритетов умножения и деления, приоритет умножения и деления выше приоритета сложения и вычитания. Для изменения приоритета операций в математических выражениях используются круглые скобки. Степень вложения скобок не ограничивается.

Операторы отношения и их функции

Операторы отношения служат для сравнения двух величин, векторов или матриц. Все операторы отношения имеют два операнда, например х и у, и записываются, как показано в табл. 8.2.


Таблица 8.2. Операторы и функции отношения

Функция Название Оператор Пример
Eq Равно = = x = = y
Ne He равно ~ = x ~ = y
Lt Меньше чем < x<y
Gt Больше чем > x>y
Le Меньше или равно <= x<=y
Ge Больше или равно >= x>=y

Данные операторы выполняют поэлементное сравнение векторов или матриц одинакового размера и возвращают значение 1 (True), если элементы идентичны, и значение 0 (False) в противном случае. Если операнды — действительные числа, то применение операторов отношения тривиально:

» eq(2,2)

ans =

» 2==2

ans =

» ne(l,2)

ans =

» 2 ~- 2

ans =

» 5 > 3

ans =

» le(5.3)

ans =

Логические операторы

Логические операторы и соответствующие им функции служат для реализации поэлементных логических операций над элементами одинаковых по размеру массивов (табл. 8.3).

Таблица 8.3. Логические операторы и функции MATLAB

Функция Название
And Логическое И (AND) &
Or Логическое ИЛИ (OR) |
Not Логическое НЕ (NOT) ~
Хог Исключающее ИЛИ (EXCLUSIVE OR)
Any Верно, если все элементы вектора равны нулю
All Верно, если все элементы вектора не равны нулю

Работа операторов поясняется приведенными ниже примерами:

»А=[1 2 3];

»В=[1 0 0];

» and(A.B)

ans =

1 0 0

» оr(А.В)

ans =

1 1 1

» А&В

ans =

1 0 0

» А|В

ans=

1 1 1

» not(А)

ans =

0 0 0

» not(B)

ans =

0 1 1

» ~B

ans=

0 1 1

» xor(A.B)

ans =

0 1 1

» any(A)

ans =

» all([0 0 0])

ans =

» all(B)

ans =

» and('abc','012')

ans =

1 1 1

Обратите внимание, что аргументами логических операторов могут быть числа и строки. При аргументах-числах логический нуль соответствует числовому нулю, а любое отличное от нуля число воспринимается как логическая единица. Для строк действует уже отмеченное правило — каждый символ строки представляется своим ASCII-кодом.






Поделиться с друзьями:


Дата добавления: 2016-12-05; Мы поможем в написании ваших работ!; просмотров: 410 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Человек, которым вам суждено стать – это только тот человек, которым вы сами решите стать. © Ральф Уолдо Эмерсон
==> читать все изречения...

2256 - | 2103 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.007 с.