Разное

Логические операторы matlab: Плохи дела: мы не можем найти эту страницу!

Методические указания к выполнению лабораторных работ для студентов специальности 6В17108 Автоматизация и управление

Методические указания к выполнению лабораторных работ для студентов специальности 6В17108 Автоматизация и управление

жүктеу/скачать 0.84 Mb.

бет1/17
Дата20.11.2022
өлшемі0.84 Mb.
#358283
түріМетодические указания

  1   2   3   4   5   6   7   8   9   …   17

Байланысты:
Лаб ПССА рус 2020-2021 14,01,21
Презентация Әуе көлігі, Реферат Темір жол көлігі Аман Диас

    Бұл бет үшін навигация:
  • ПРОГРАММНЫЕ СРЕДСТВА СИСТЕМ АВТОМАТИЗ ЦИИ

н
Некоммерческое
акционерное
общество
оxx. z=x.x

АЛМАТИНСКИЙ
УНИВЕРСИТЕТ
ЭНЕРГЕТИКИ И
СВЯЗИ имени Гумарбека Даукеева

Кафедра Автоматизации и управления

ПРОГРАММНЫЕ СРЕДСТВА СИСТЕМ АВТОМАТИЗ
ЦИИ

Методические указания к выполнению лабораторных работ


для студентов специальности 6В17108 – Автоматизация и управление

Алматы 2020


СОСТАВИТЕЛИ: Ибраева Л.К., Абжанова Л.К., Ильясов А.З. Программные средства систем автоматизации. Методические указания к выполнению лабораторных работ для специальности 6В17108 – Автоматизация и управление. – Алматы: АУЭС, 2019 – 48 с.

Методические указания предназначены для освоения инструментариев системы программирования и моделирования MATLAB и содержат описания к 6 лабораторным работам.


Ил.-7, табл.- 15, библиогр.- 10 наим.

Рецензент: к.т.н., доцент каф. СИБ – Е.Г.Сатимова

Печатается по плану издания некоммерческого акционерного общества «Алматинский университет энергетики и связи» на 2019 г.

© НАО «Алматинский университет энергетики и связи», 2019 г.

Содержание


Введение…………………………………………………………………..

4

1 Лабораторная работа №1. Знакомство с системой. Обычные вычисления …………………………………………………………………

5

2 Лабораторная работа №2. Работа с матрицами и векторами………..

13

3 Лабораторная работа №3. Введение в графику MATLAB……………

19

4 Лабораторная работа №4. Основы Simulink…………………………..

32

5 Лабораторная работа №5. Основы программирования в MATLAB…

26

6 Лабораторная работа № 6. Циклические операторы в среде программирования MATLAB…………………………………………….

37


Список литературы…………………………………………………………………………..

47

жүктеу/скачать 0.84 Mb.


Достарыңызбен бөлісу:

  1   2   3   4   5   6   7   8   9   …   17


©melimde.com 2023
әкімшілігінің қараңыз

    Басты бет

matlab-exam/5.

Поэлементное возведение массива в степеньpower/Деление матриц слева направоmrdivide\Деление матриц справа налево (обратное деление матриц)mldivide./Поэлементное деление массивов слева направоrdivide.\Поэлементное деление массивов справа налево
ldivide
 X=[ 0 1 2; 
     5 3 6]
 Y=[ 9 8 4; 
     3 1 1]
 
  plus(X,Y)
    ans ==
      9 9 6
      8 4 7
  
  times(X,Y)
    ans ==
      0 8 8
      15 3 6    
      
  mtimes(X,Y')
    ans ==
      16 3
      93 24
      
   uminus(Y)
    ans ==
      -9 -8 -4
      -3 -1 -1
      
  • Логическое выражение с оператором AND (&) является истинным, если оба операнда — истинны. Если элементами логического выражения являются числа, то выражение истинно, если оба операнда отличны от нуля.
 u = [1 0 2 3 0 5];
 v = [5 6 1 0 0 7]; 
 u & v 
 ans = 1 0 1 0 0 1
  • Логическое выражение с оператором OR (|) является истинным, если один из операндов или оба операнда логически истинны. Выражение ложно, только если оба операнда логически ложны. Если элементами логического выражения являются числа, то выражение ложно, если оба операнда равны нулю.
 u | v
 ans = 1 1 1 1 0 1
  • Логическое выражение с оператором NOT (~) строит отрицание. Результат логически ложен, если операнд истинен, и истинен, если операнд ложен. Если элементами логического выражения являются числа, то любой операнд, отличный от нуля, становится нулем, и любой нулевой операнд становится единицей.
 ~ u 
 ans = 0 1 0 0 1 0
  • bitand(A,B) — возвращает поразрядное И двух неотрицательных целых аргументов А и В. Пример:
f = bitand(7,14)
f == 6
 
  • bitcmp(A,n) — возвращает поразрядное дополнение аргумента А как n-битовое неотрицательное целое число. Пример:
g=bitcmp(6,4) 
g == 9
  • bitor(A,B) — возвращает поразрядное ИЛИ двух неотрицательных целых аргументов А и В.
    Пример:
v=bitor(12,21)
v == 29
  • bitset(A,bit,v) — устанавливает бит в позиции bit равным значению v, которое должно быть 0 или 1. Пример:
d=bitset(12,2,1) 
d == 14
  • bitshift(A,n) — возвращает значение аргумента А, сдвинутое на п бит. Если n>0, это аналогично умножению на 2″ (левый сдвиг). Если n<0, это аналогично делению на 2n (правый сдвиг). Пример:
f=bitshift(4,3) 
f == 32
  • bitxor(A, В) — возвращает результат поразрядного исключающего ИЛИ для двух аргументов А и В. Оба аргумента должны быть целыми. Пример:
x = bitxor(12,31) 
х == 19

Что такое логические операторы в MATLAB?

Zain Ali Babar

Grokking the Behavioral Interview

Получите бесплатный популярный курс Educative по подготовке к собеседованию.

Операторы — это специальные ключевые слова или символы, выполняющие определенные функции. MATLAB поддерживает использование операторов как для скалярных, так и для нескалярных данных. Логические операторы , поддерживаемые в MATLAB, перечислены и описаны ниже:

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

Логическое И (

и )

Оператор и используется для определения логического «И» массивов или чисел.

В случае одного числа операция И устанавливается в значение true или 1, если оба элемента в левой и правой частях оператора и отличны от нуля. В противном случае возвращается 0.

В случае массива сравниваются соответствующие элементы массива, и операция И устанавливается в значение true или 1, если оба элемента слева и справа от 9Операторы 0021 и не равны нулю. В противном случае возвращается 0.

Пример программы

 

% И скаляра и скаляра

X = 5

Y = 4

X & Y

% 0

X & Y

% Ответ будет 0

% И скаляра и массива

X = [5 0 4]

Y = 5

X & Y

0 % Ответ будет [1 ]

% И массива и массива

X = [5 1 0]

Y = [0 7 9]

X & Y

% Ответ будет [0 1 0]

Оператор И со скалярами и массивами

Логический 0 1 |

)

Оператор | используется для определения логического «ИЛИ» массивов или чисел.

В случае одного числа операция ИЛИ устанавливается в значение true или 1, если хотя бы один элемент слева или справа от | Оператор не равен нулю. В противном случае возвращается 0,

В случае массива сравниваются соответствующие элементы массива, и операция ИЛИ устанавливается в значение true или 1, если хотя бы один элемент находится слева или справа от | Оператор не равен нулю. В противном случае возвращается 0.

Пример программы

 

% ИЛИ скаляра и скаляра

X = 5

Y = 0

X | Y

% Ответ будет 1

X = 5

Y = 5

X | Y

% Ответ будет 1

% ИЛИ скаляра и массива

X = [5 0 4]

Y = 0

X | Y

% Ответ будет [1 0 1]

% ИЛИ массива и массива

X = [5 1 0]

Y = [0 7 9]

X | Y

% Ответ будет [1 1 1]

Оператор ИЛИ со скалярами и массивами

Логическое НЕ (

~ )

Оператор ~ «определяет» логический массив чисел.

В случае одного числа оператор НЕ возвращает 0, если значение не равно нулю, и возвращает 1, если значение равно нулю.

В случае массива возвращается массив, в котором значения индекса равны 0. В исходном массиве значения не равны 0. Значения индекса возвращенного массива равны 1, тогда как в исходном массиве значения были нулевыми. Мы можем видеть это в примере ниже.

Пример Программы

 

% НЕТ СКАРА

X = 5

~ x

% Ответ будет 0

x = 0

~ x

% Ответ будет 1

%.

Y = [0 7 9]

~Y

% Ответ будет [1 0 0]

Оператор НЕ со скалярами и массивами

Логическое И с коротким замыканием (

&& )4 Оператор 188 && используется для определения логического «И» массивов или чисел. MATLAB использует метод короткого замыкания, т. е. в случае выражения A && B , если какое-либо значение из A равно 0, то B не используется, так как AND гарантированно равен 0. Это более подробно объясняется ниже.

В случае одного числа операция && устанавливается в значение true или 1, если оба элемента слева и справа от оператора && отличны от нуля. В противном случае возвращается 0.

В случае массива сравниваются соответствующие элементы массива, и операция && возвращает значение true или 1, если все элементы сравниваемых массивов отличны от нуля. В противном случае возвращается 0.

Это демонстрирует следующий пример.

Как видно ниже, как только найден один нулевой элемент, операция завершается, а остальные элементы массива не имеют значения, в результате чего функция возвращает 0. Это известно как короткое замыкание.

Пример программы

 

% и (&&) скалярного и скалярного

x = 5

y = 0

x && y

%. X && Y

% Ответ будет 1

% Обратите внимание, что для скаляра && аналогично &

% И (&&) скаляра и массива

X = [5 0 4]

Y = 1

X && Y

% Ответ будет 30 9004

X = [5 4 4]

Y = 1

X && Y

% Ответ будет 1

% И массива и массива

X = [5 1 0]

Y = [0 7 9 ]

X && Y

% Ответ будет 0

X = [5 1 4]

Y = [4 7 9]

X && Y

% Ответ будет 1

И и короткое замыкание

Логическое ИЛИ с коротким замыканием (

|| )

Оператор1

1 |

используется для определения логического «ИЛИ» массивов или чисел.

MATLAB использует метод короткого замыкания, т. е. в случае выражения A || B , если все значения из A равны 1, то B не используется, так как ИЛИ гарантированно равно 1.

В случае одного числа || Операции присваивается значение true или 1, если хотя бы один элемент слева или справа от || Оператор не равен нулю. В противном случае возвращается 0.

В случае массива сравниваются соответствующие элементы массива и || Операция возвращает значение true или 1, если хотя бы один из сравниваемых массивов не имеет ненулевых значений. В противном случае возвращается 0. Это подробнее поясняется в примере ниже.

Как только найден один ненулевой массив, операция завершается, и второй сравниваемый массив не имеет значения, в результате чего функция возвращает 1. Это известно как короткое замыкание.

Примечание: || Оператор

вернет 0, если оба сравниваемых числа или массива равны 0.

Пример программы

 

% OR (||) скаляра и скаляра

X = 5

Y = 0

X || Y

% Ответ будет 1

X = 0

Y = 0

X || Y

% Ответ будет 0

% Примечание: для скаляра || похож на |

% ИЛИ (||) скаляра и массива

X = [5 0 4]

Y = 1

X || Y

% Ответ будет 1

X = [0 0 0]

Y = 0

X || Y

% Ответ будет 0

% ИЛИ массива и массива

X = [5 1 1]

Y = [0 0 0]

X || Y

% Ответ будет 1

X = [5 1 1]

Y = [0 1 0]

X || Y

% Ответ будет 1

X = [5 1 0]

Y = [0 7 9]

X || Y

% Ответ будет 0

X = [0 0 0]

Y = [0 0 0]

X || Y

% Ответ будет 0

или и короткометражные.

логических операторов. В чем разница между & и && в MATLAB?

спросил

Изменено 2 года, 5 месяцев назад

Просмотрено 176 тысяч раз

В чем разница между логическими операторами & и && в MATLAB?

  • matlab
  • логические операторы
  • короткое замыкание

Одиночный амперсанд & является логическим оператором И. Двойной амперсанд && снова является логическим оператором И, который использует короткое замыкание. Короткое замыкание просто означает, что второй операнд (правая часть) оценивается только тогда, когда результат не полностью определяется первым операндом (левая часть)

A & B (оцениваются A и B)

A && B (B оценивается только в том случае, если A истинно)

6

&& и || принимают скалярные входы и всегда закорачивают. | , и принимают входные данные массива и замыкаются только в операторах if/while. По назначению последние не замыкаются накоротко.

Дополнительные сведения см. на этих страницах документа.

3

Как уже упоминалось другими, и — это оператор логического И, а && — оператор короткого замыкания И. Они различаются тем, как оцениваются операнды , а также оперируют ли они массивами или скалярами:

  • и (оператор И) и | (оператор ИЛИ) может работать с массивами поэлементно.
  • &&
    и || — это версии с коротким замыканием, для которых второй операнд оценивается только тогда, когда результат не полностью определяется первым операндом. Они могут работать только на скаляры , а не массивы.

Оба являются логическими операциями И. Тем не менее, && является оператором «короткого замыкания». Из документов MATLAB:

Это операторы короткого замыкания в том смысле, что они оценивают свой второй операнд только тогда, когда результат не полностью определяется первым операндом.

Подробнее здесь.

и — логический поэлементный оператор, а && — логический оператор короткого замыкания (который может работать только со скалярами).

Например (простите за синтаксис).

Если..

 A = [Верно Верно Ложно Верно]
Б = Ложь
A & B = [Ложь Ложь Ложь Ложь]
 

..или..

 B = Верно
A & B = [Верно Верно Ложно Верно]
 

Для && правый операнд вычисляется, только если левый операнд истинен, и результатом является одно логическое значение.

x = (b ~= ​​0) && (a/b > 18,5)

Надеюсь, понятно.

3

&& и || являются операторами короткого замыкания, работающими на скалярах. & и | работать с массивами и использовать короткое замыкание только в контексте выражений цикла , если , или , если .

0

Хорошее эмпирическое правило при построении аргументов для использования в условных операторах (IF, WHILE и т. д.): всегда использовать &&/|| формы, если нет очень веской причины не делать этого. Есть две причины…

  1. Как уже упоминалось, короткое замыкание &&/|| похож на большинство C-подобных языков. Это сходство / знакомство обычно считается аргументом в его пользу.
  2. Использование оператора && или || формы вынуждают написать полный код для определения вашего намерения для векторных аргументов. Когда a = [1 0 0 1] и b = [0 1 0 1], является ли a&b истинным или ложным? Я не могу вспомнить правила для MATLAB &, не так ли? Большинство людей не могут. С другой стороны, если вы используете && или ||, вы ВЫНУЖДЕНЫ написать код «полностью», чтобы разрешить условие.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *