Операции отношения и логические операции

Предварительные замечания.

Важную группу операторов традиционно составляют логические операторы и операторы сравнения (операции отношения). Операндами в этом случае могут быть как скаляры, так и массивы (см. далее).

Прежде всего, отметим некоторые особенности работы с логическими выражениями. Традиционно под логическими выражениями подразумевают тип данных, переменные которого могут принимать два значения (истина (или true) и ложь (или false)). В системе MATLAB любое числовое значение, отличное от нуля, интепретируется как true, а нулевые значения как false. Фактически, это и есть правило перевода числовых значений в логические значения. Обратное преобразование выполняется по следующему правилу: логическое значение true преобразуется в числовое значение 1, а логическое выражение false преобразуется в числовое значение 0.

Следует отметить, что если некоторой переменной присвоить в качестве значения true или false, то отображаемым значением будет соответственно 1 или 0 (в режиме командной строки):

>> x=true х =

1

>> y=false У =

0

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

Операндами для операторов сравнения выступают числовые значения (это бинарные операторы). Если оба операнда являются скалярами (в общем случае операнды могут быть массивами - см. далее), то сравнение выполняется по правилам сравнения чисел. При истинном соотношении возвращается значение 1, а при ложном - значение 0. Операторы сравнения перечислены в таблице 1.4.1.

Приведем ниже пример вычислений в режиме командного окна:

» х=2; у=4; z=8;

>> х<у ans =

1

>> х>у ans =

0

>> y~=z ans =

1

>> y==z ans -

Таблица 1.4.1. Операторы сравнения (операции отношения) в MATLAB.

Символ

(оператор)

Выполняемое действие (описание)

<

Операция «меньше». Выполняется проверка на «меньше» (оператор проверки того, что значение первого операнда меньше значения второго операнда)

<=

Операция «меньше или равно». Выполняется проверка на «меньше или равно» (оператор проверки того, что значение первого операнда не больше значения второго операнда)

>

Операция «больше». Проверка на «больше»

(оператор проверки того, что значение первого операнда больше значения второго операнда)

>=

Операция «больше или равно». Выполняется проверка на «больше или равно» (оператор проверки того, что значение первого операнда не меньше значения второго операнда)

= =

Операция «равно». Выполняется проверка на равенство (оператор проверки значений операндов на предмет равенства)

Операция «не равно». Выполняется проверка на неравенство (оператор проверки значений операндов на предмет неравенства)

Значение выражения х<у здесь равно единице (истина) в силу того, что величина переменной х в самом деле меньше величины переменной у. По этой же причине значение противоположного по смыслу выражения (х>у) равно нулю (ложь). Выражение y~=z является истинным, так как значение переменной у равное 4, не равно значению переменной z, равному 8. Последующее выражение y==z не является истинным, вследствие чего его значение равно 0.

Функции, соответствующие операциям отношения (функции отношения), приведены в таблице 1.4.2.

Таблица 1.4.2. Функции, соответствующие операциям отношения.

Операция

Функция

в системе MATLAB

Пример

Меньше

It

It(x,y)

Меньше или равно

le

le(x,y)

Больше

gt

gt(x,y)

Больше или равно

ge

ge(x,y)

Равно

eq

eq(x,y)

Не равно

ne

ne(x,y)

Следует отметить, что операции отношения «равно» и «не равно» с комплексными числами реализуются в системе MATLAB точно также же как и вещественными числами (по описанным выше правилам). Вместе с тем, как известно, операции сравнения комплексных чисел в математике не определены. Тем не менее, в системе MATLAB соответствующие операции с комплексными числами проводятся, но их значения определяются действительными частями рассматриваемых операндов:

>> x=l+2i; y=5i; z=7i;

>> х>у ans =

1

>> y<=z ans =

1

>> y>=z ans =

1

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ   След >