Documente Academic
Documente Profesional
Documente Cultură
Curs 5
Curs 5
CURS 5
2. Instrucțiuni de salt și bucle (instrucțiuni pentru controlul derulării unui program) (partea 3)
Instrucțiunea break
Provoacă întreruperea ciclurilor for și while și salt la prima instrucțiune după instrucțiunea end
a ciclului. Se recomandă a fi utilizată și în cazul în care o condiție de eroare este detectată în
interiorul unei bucle. În cazul unor cicluri imbricate, break comandă ieșirea din cel mai interior
ciclu.
Exemplul 1: Să se scrie un fișier script cu numele sumaValPozVar1 care să calculeze suma unei
serii de n valori numerice pozitive introduse de utilizator. Dacă se introduce un număr negativ, acesta
nu este luat în considerare și se calculează suma valorilor pozitive introduse până la acesta.
Informatica aplicată 2 - MATLAB 2
Exemplul 2: Să se scrie un fișier script numit sumaSerieNumereVar3 pentru calculul sumei unei
serii de n valori numerice introduse de utilizator folosind o buclă while infinită și instrucțiunea
break.
%Calculeaza suma unei serii de n valori numerice introduse de utilizator
%Se foloseste bucla WHILE infinita si instructiunea BREAK
Instrucțiunea continue
Transferă controlul următoarei iterații din ciclurilor while și for în care apare, sărind peste
celelalte instrucțiuni din corpul ciclului. Este utilă în cazul unor bucle mari, când trebuie sărite
anumite instrucțiuni. În cicluri imbricate controlul este dat următoarei iterații a ciclului care conține
instrucțiunea continue.
b) dacă conditie logica 2 este falsă, instrucțiunea continue nu este luată în considerare
și se execută corp instructiuni 2 și se trece la următoarea iterație din ciclul while.
Exemplul 1: Se generează numere aleatoare întregi cu distribuție uniformă mai mici sau egale cu 10
atât timp cât numărul aleator generat este mai mare decât indicele acestuia. Când numărul aleator
generat este mai mic decât indicele acestuia se termină generarea (combinație a instrucțiunilor
continue și break).
Informatica aplicată 2 - MATLAB 4
Exemplul 2: Să se scrie un fișier script cu numele sumaValPozVar2 care să calculeze suma unei
serii de n valori numerice pozitive introduse de utilizator. Dacă se introduce un număr negativ, acesta
nu este luat în considerare și se calculează suma valorilor pozitive introduse.
Informatica aplicată 2 - MATLAB 5
Instrucțiunea return
Provoacă ieșirea forțată din funcție sau script și întoarcerea la funcția apelantă (cea care a apelat
funcția) sau dă controlul la tastatură.
Exemplu general:
function [argIesire]=numeFunctie(x,y,...)
while conditie 1
corp instructiuni 1;
if conditie 2
corp instructiuni 2;
argIesire=valoare 1;
return;
end
corp instructiuni 3
end
Informatica aplicată 2 - MATLAB 6
corp instructiuni 4;
argIesire=valoare 2;
end %end-ul functiei nu este obligatoriu
Dacă conditie 1 este sau devine falsă se execută corp instructiuni 4 și se returnează
argIerire (=valoare 2) (se iese din funcție).
Exemplul 2: Să se găsească poziția și primul număr divizibil cu o valoare dată dintr-un șir de numere
întregi strict pozitive.
function [indx,val]=returnDemo(a,x)
%Exemplu cu instructiunea return
%Functia returnDemo gaseste pozitia si valoarea primului numar divizibil
%cu o valoare data dintr-un sir de numere intregi
i=1;
while i<=length(x)
if rem(x(i),a)==0
indx=i;
val=x(i);
return
end
indx=NaN; %indx nu este un numar
val=NaN; %nu exista nicio valoare din sir divizibila cu valoarea data
i=i+1;
end
disp(['nu exista in sir numar divizibil cu ',num2str(a)]);
end %end-ul functiei nu este obligatoriu
Bibliografie
1. ***, Fundamente de Matlab, telecom.etti.tuiasi.ro/
2. Iulian Lupea, Curs Matlab
3. Nicoleta Breaz ș.a., Modelarea matematică prin Matlab
4. ***, MATLAB User’s Guide, The Mathworks Inc., SUA