Условный оператор может использоваться как в Command Window, так и в функции и скрипте.
В М-файлах широко используется оператор if.
Он состоит из условия, варианта действий если оно выполняется, запасного варианта действий и иногда еще из условия№2 и варианта действий для него.
function[a,b,c]=exIF(x,y,z) a=0; b=0; c=0; if x==y a=1; elseif x==z b=1; else c=1; end end | Пусть х=1, у=10, z=100. Тогда условие№1 (х==у) не выполняется. Тогда рассматривается второе условие (x==z). Оно тоже не выполняется. Тогда выполняется вариант№3 действий (с=1). Функция вернет значения a=0 b=0 c=1. |
Оператор Условный, проверяя условие, возвращает ноль (если условие не выполняется) или единицу (если условие выполняется) и может присвоить это значение (1 или 0) переменной, поэтому можно написать в Command Window, что переменная равна условному оператору.
%Command Window |
>> z=(x>y) z = 0 |
Например пусть х=2, у=3, тогда z=(x>y) приведет к ответу z=0, так как x>y неверно (ложно) и оператор Условный вернет ноль и присвоит его переменной z.
Логические выражения. В зависимости от пожеланий пользователя, он может употреблять различные варианты написания одних и тех же по смыслу (по вычисляемому результату) логических выражений в условном операторе.
|
|
Смысл логического выражения заключается в том, что на основании значений (1 или 0) исходных переменных делается вывод (вычисляется возвращаемое значение 1 или 0) по правилам, предусмотренным для данного логического выражения.
Пусть исходные переменные называются Х и У. Они принимают значения 1 (истина) или 0 (ложь). Логическое выражение может быть конъюнкция (Х и У), дизъюнкция (Х или У), отрицание (не Х). Все остальные выражения могут быть сведены к последовательности конъюнкций, дизъюнкций и отрицаний.
Для логических выражений (Табл.1.1) предусмотрены команды MATLAB. Некоторые из них называются логическими операторами, а остальные называются логическими операциями. Оператор это функция, аргументы которой указываются в скобках. Операция имеет знак операции, который ставится между переменными.
Тип выражения | Логическое выражение | Логический оператор | Логическая операция |
И | X and Y | and(X,Y) | X&Y |
ИЛИ | X or Y | or(X,Y) | X|Y |
Исключ. ИЛИ | X xor Y | xor(X,Y) | нет операции |
НЕ | not X | not(X) | ~X |
Табл.1.1. Логические выражения.
Правила (Табл.1.2), по которым определяются возвращаемые значения для логических выражений, следующие:
Х | У | Не Х | Х и У | Х или У | Х исключающее или У |
~X | X&Y | X|Y | |||
0 | 1 | >> z=~x z = 1 | >> z=x&y z = 0 | >> z=x|y z = 1 | |
not(X) | and(X,Y) | or(X,Y) | xor(X,Y) | ||
0 | 1 | >> z=not(x) z = 1 | >> z=and(x,y) z = 0 | >>z=or(x,y) z = 1 | >> z=xor(x,y) z = 1 |
0 | 0 | 1 | 0 | 0 | 0 |
0 | 1 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 1 | 1 | 0 |
|
|