3.4. Operatorii sistemului MATLAB 5. Combinarea operatorilor în expresii aritmetice. Funcții încorporate
Operatorii logici au cea mai mică prioritate față de operatorii relaționali și operatorii aritmetici.
Operatori aritmetici. Când lucrați cu o serie de numere, următoarele niveluri de prioritate sunt setate pentru operațiile aritmetice.
(. ') Transpose a explodat, a explodat exponentiation, matricea transpusa conjugat Hermitian (^.) ('), Construirea matricei la puterea (^);
adăugare unară (+), scădere unară (-);
În cadrul fiecărui nivel, operatorii au prioritate egală și sunt evaluați în ordine de la stânga la dreapta. Ordinea implicită poate fi modificată utilizând paranteze.
Să fie date 2 vectori
Rezultatele executării operatorilor
Operatorii aritmetici permit utilizarea expresiilor index:
Operatorii aritmetici ai MATLAB lucrează, de regulă, cu rețele de aceeași dimensiune. Pentru vectori și matrice rectangulare, ambii operanzi trebuie să aibă aceeași dimensiune, cu excepția cazului în care unul dintre ei este scalar. Dacă unul dintre operanzi este scalar și celălalt nu este, sistemul MATLAB presupune că scalarul se extinde la dimensiunea celui de-al doilea operand și operația specificată este aplicată fiecărui element. Această operație se numește extensie scalară.
Operatori relatari. În sistemul MATLAB sunt definiți următorii 6 operatori relaționali:- <Меньше
- <= Меньше или равно
- > Mai mult
- > = Mai mare sau egal cu
- == La fel de identic
Operatorii relaționali efectuează o comparare element-cu-element a două matrice de dimensiuni egale. Pentru vectori și matrice rectangulare, ambii operanzi trebuie să aibă aceeași dimensiune, cu excepția cazului în care unul dintre ei este scalar. În acest caz, MATLAB compară scalar cu fiecare element al celuilalt operand. Poziții în care acest raport este adevărat, obține o valoare de 1, unde false - 0.
Operatorii relaționali, de regulă, sunt utilizați pentru a schimba secvența de execuție a declarațiilor de program. Prin urmare, ele sunt cele mai des utilizate în corpul dacă, pentru, în timp ce, comutați declarații.
Operatorii relaționali sunt întotdeauna executați element-cu-element.
Să comparăm două matrice utilizând condiția A exemplu exemplu În cazul matricelor, funcția toate verifică coloanele, adică este orientată pe coloane. exemplu ans = ans = ans = O listă completă a funcțiilor logice ale sistemului MATLAB este cuprinsă în directorul ops. Funcția de căutare. Funcția de căutare determină indicii elementelor matricei care îndeplinesc condiția logică specificată. În mod obișnuit, este folosit pentru a crea șabloane pentru comparație și a crea matrice de indexuri. În forma cea mai frecvent utilizată, funcția k = find (x <условие> ) returnează vectorul index al acelor elemente care satisfac condiția dată. Operator de ciclu cu un anumit număr de operațiuni pentru <переменная цикла> = <начальное значение>: <приращение>:<конечное значение> Operatorul pentru buclă. sfârșitul execută o instrucțiune sau un grup de instrucțiuni de câte ori este predeterminat. În mod prestabilit, incrementul este 1. Puteți specifica orice increment, inclusiv incrementarea negativă. Pentru indicii pozitivi, execuția este finalizată atunci când valoarea indicelui depășește <конечное значение>; Pentru creșteri negative, execuția este finalizată atunci când indicele este mai mic de <конечное значение>. Acest ciclu este executat de cinci ori: Folosind o matrice ca o variabilă de buclă. Array-urile pot fi folosite ca variabila pentru buclă. Luați în considerare o matrice A de dimensiune mxn. Operatorul ciclului Începând cu MATLAB 5, fișierele M pot conține coduri pentru mai multe funcții. Prima funcție din fișier este funcția principală numită de numele fișierului M. Alte funcții din fișier sunt subfuncții care sunt vizibile numai pentru funcția principală și alte subfuncții ale aceluiași fișier. Fiecare subfuncție are propriul antet. Subfuncțiile se urmează unul pe altul în mod continuu. Subfuncțiile pot fi apelate în orice ordine, în timp ce funcția principală este executată mai întâi. funcție [avg, med] = date noi (u)
Dacă elementele expresiei logice sunt numere, atunci expresia este falsă dacă ambii operanzi sunt zero.
Utilizăm vectorii u și v, definiți mai sus, și executăm expresia logică cu operatorul OR (|):
U | v
ans =
exemplu
Luați în considerare doi operandi numerici a și b:
a = 1;
b = 1;
Apoi operația xor dă rezultatul:
Xor (a, b)
ans = 0
Lăsați un vector u să fie dat și este necesar să îl verificați pentru condiția "toate elementele sunt mai mici de 3?". Dacă această condiție este îndeplinită, se emite mesajul "Toate elementele mai mici de 3".
u = [1 2 3 4 0];
dacă toate (u <3)
Disp ("Toate elementele sunt mai mici de 3")
capăt
În acest caz, nu va apărea nici un mesaj, dar dacă în vectorul u luăm vectorul
u = [0 1 2 0]
va apărea un mesaj
ans = 'Toate elementele sunt mai mici de 3'
toate (A)
Să luăm în considerare cele două matrice numerice A și B
A = [0 1 5; 2 NaN -inf];
B = [0 15; 2 5 inf];
Formăm matricea C și aplicăm funcțiile enumerate mai sus
C = A./B
C =
0 0 1
1 0 0
1 0 0
0 1 1
0 1 0
0 0 0
instrucțiuni
capăt
pentru i = 2: 6
x (i) = 2 x (i-1);
capăt
Sunt posibile bucle de tip:
pentru i = 1: m
pentru j = 1: n
A (i, j) = 1 / (i + j-1);
capăt
capăt
pentru i = A
instrucțiuni
capăt
definește variabila ciclului i ca vector A (.k). Pentru prima etapă a ciclului, k este 1; pentru al doilea k este 2 și așa mai departe, până când k ajunge la n. Adică, bucla este executată de câte ori sunt mai multe coloane în matricea A. Pentru fiecare etapă, i este un vector care conține una dintre coloanele matricei A.Funcții încorporate
% NEWSTATS Afișează valoarea medie și mediana pentru elementele vectorului u. utilizând funcții încorporate.
n = lungime (u);
avg = media (u, n);
med = mediană (u, n);Articole similare