Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




INSTRUCTIUNI SI FUNCTII DE CONTROL (I) MATLAB

Informatica


Matlab - laborator 2

instructiuni si functii de control (I)

Operatori relationali

Operator



Semnificatie

Observatii

<

mai mic

compara doar partea reala a operanzilor; ignora partea imaginara

<=

mai mic sau egal

compara doar partea reala a operanzilor; ignora partea imaginara

>

mai mare

compara doar partea reala a operanzilor; ignora partea imaginara

>=

mai mare sau egal

compara doar partea reala a operanzilor; ignora partea imaginara

identic 10210e424k

trateaza atāt partea reala cāt si cea imaginara

diferit

trateaza atāt partea reala cāt si cea imaginara

sunt utilizati pentru a compara doua matrice de dimensiuni egale, element cu element;

returneaza o matrice cu aceeasi dimensiune a matricelor care se compara, cu elemente 1 atunci cānd relatia este adevarata si cu elemente 0 atunci cānd relatia este falsa;

forma generala de utilizare:

rezultat = expresie_1 oper_rel expresie_2

Exemple:

A=[1 2 3;4 5 6;7 8 9];

B=[0 2 4; 3 5 7;6 8 10];

C=A<B

D=A<=B

E=A>B

F=A>=B

G=A==B

H=A~=B

A=[1+i 2+3i 3-5i;4+4i 5 6-i;7-2i 8+i 9];

B=[0-i 2+3i 4-2i; 3 5+i 7+3i;6+6i 8-i 10];

C=A<B

D=A<=B

E=A>B

F=A>=B

G=A==B

H=A~=B

Operatori logici

Operator

Simbol

Prioritate

NU (NOT)

sI (AND)

&

SAU (OR)

compara doua matrice element cu element;

operatorii & si | returneaza 1 (Adevarat) pentru orice valoare diferita de zero si 0 (FALS) pentru valoare nula;

operatorul ~ (complementul logic) returneaza 0 daca A este diferit de 0 si 1 daca A este nul;

operatorii & si | au prioritate mai mica decāt operatorii relationali si aritmetici.

Exemple:

A=[1 2;5 6;0 0];

B=[3 0;4 0;5 0];

C=~A

D=A&B

E=A|B

F=~A<B

H=~(A<B)

G=A<B&A~=B

I=(A<B)&(A~=B)

Instructiunea "for"

for contor=expresie

grup_de_instructiuni

end

"expresie" este, de cele mai multe ori de forma:

i=valoare_initiala:pas:valoare_finala

daca pasul este omis, se considera ca are valoarea 1.

Exemple:

1. Sa se construiasca un vector avānd ca elemente patratele primelor 10 numere naturale nenule.

for i=1:10

A(i)=i^2;

end

disp(A)

clear

2. Sa se construiasca un vector avānd ca elemente patratele primelor 10 numere naturale nenule pare.

for i=2:2:20

A(i)=i^2;

end

disp('A=')

disp(A)

for j=1:10

B(j)=A(2*j);

end

disp('B=')

disp(B)

clear

Instructiunea "while"

while expresie

grup_de_instructiuni

end

"expresie" este, de cele mai multe ori de forma:

expresie_1 operator_relational conditie_2

daca expresia este īntotdeauna adevarata logic, bucla devine infinita; iesirea dintr-o bucla infinita se face fortat, prin apasarea simultana a tastelor Ctrl si C.

Exemple:

1. Sa se calculeze suma numerelor naturale consecutive pāna cānd aceasta depaseste valoarea 50.

s=0;

i=0;

while s<=50

s=s+i;

i=i+1;

end

disp('Suma primelor ');

disp(i-1);

disp(' numere naturale este ');

disp(s);

clear

2. Sa se īmparta numarul 500 succesiv la 2, pāna cānd rezultatul devine mai mic decāt 2. Sa se afiseze acest rezultat.

s=500;

while s>2

s=s/2;

end;

disp(s)

clear

Instructiunea" if":

a) Instructiunea" if" simpla:

if expresie_logica

grup_de_instructiuni

end

b) Clauza "else"

if expresie_logica

grup_de_instructiuni_1

else

grup_de_instructiuni_2

end

c) Clauza "elseif"

if expresie_logica_1

grup_de_instructiuni_1

elseif expresie_logica_2

grup_de_instructiuni_2

elseif expresie_logica_(n-1)

grup_de_instructiuni_(n-1)

else

grup_de_instructiuni_n

end

Exemple:

1. Sa se numere elementele pozitive nenule ale unui vector dat si sa se afiseze rezultatul.

A=[1 6 -2 8 -5 -3 2 0 9];

s=0;

for i=1:length(A)

if A(i)>0

s=s+1;

end;

end;

disp('Numarul de elemente pozitive nenule ale vectorului:');

disp(s)

2. Sa se precizeze, pentru fiecare din elementele unui vector de numere naturale dat, daca sunt pare sau impare.

A=[1 6 3 8 15 12 2 0 9];

for i=1:length(A)

if rem(A(i),2)==1

disp('Impar')

else

disp('Par')

end;

end;

clear

3. Sa se numere separat elementele pozitive nenule, elementele nule si elementele negative nenule ale unui vector dat si sa se afiseze rezultatele.

A=[1 -6 3 -8 15 -12 2 0 9];

s=0;

t=0;

u=0;

for i=1:length(A)

if A(i)>0

s=s+1;

elseif A(i)==0

t=t+1;

else

u=u+1;

end;

end;

disp('Numarul elementelor pozitive nenule:');

disp(s);

disp('Numarul elementelor nule:');

disp(t);

disp('Numarul elementelor negative nenule:');

disp(u);

clear

Instructiunea "break"

break

se utilizeaza pentru a iesi dintr-o bucla "for" sau "while" īnainte ca aceasta sa se fi terminat;

īn cazul ciclurilor imbricate, "break" realizeaza iesirea din ciclul interior.

Exemplu:

Sa se construiasca un vector B ale carui elemente reprezinta radacinile patrate ale elementelor unui vector A dat. Daca vectorul A are valori negative printre elemente, sa se īntrerupa executia programului.

A=[1 9 4 25 -6 36]

for i=1:length(A)

if A(i)<0

break;

end

B(i)=sqrt(A(i))

end

Exercitii propuse:

1. Sa se construiasca si sa se afiseze vectorul cu elementele de forma , k = 1.10. Sa se afiseze numarul elementelor mai mici ca 0.02 .

2. Sa se scrie un program care aduna elementele unui vector, pāna la īntālnirea unui numar mai mare ca 100. Sa se afiseze suma calculata si numarul elementelor totalizate.

3. Sa se construiasca matricea cu elementele de forma , i = 1.5,  j = 1.5.

4. Sa se construiasca un vector B pornind de la un vector A, astfel:

daca elementul corespunzator din vectorul A este strict mai mare ca 4, elementul vectorului B se calculeaza ca radacina patrata a acestuia;

altfel, elementul corespunzator din vectorul B are valoarea 0.

Sa se numere elementele nule ale vectorului B


Document Info


Accesari: 12485
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )