Вы здесь

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

 

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

Арифметические операторы являются самыми распространенными и известными. В отличие от большинства языков программирования в системе 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)

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

» А=[1 2 3]; 

» В=[4 5 6]: 

» В-А

 ans=

3

3                 3

» minus (В. А)


ans =


3

3                 3

» А. ^ 2


ans =


1

4                  9

» power(A,2)


ans =


1

4                  9

» ДАВ


ans=


4.0000

2.5000          2.0000

» Idivide(A.B)


ans=


4.0000

2.5000            2.0000

» rdivide(A.B)


ans=


0.2500

0.4000             0.5000

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

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

 


Top.Mail.Ru