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




MATLAB - LABORATOR

Matematica


Matlab - laborator 3

instructiuni si functii de control (II)

Instructiunea return



comanda iesirea normala din fisierul-M catre functia apelanta sau c& 525i822f #259;tre tastatura.

function z=radical_modificat(x)

if x<0

z=0;

return;

else

z=sqrt(x);

disp z)

end;

Instructiunea error

permite afisarea unor mesaje la întâlnirea unei erori:

function y=radical(x)

if x<0

error('Ati introdus un numar negativ !');

else

y=sqrt(x);

end;

Instructiunea "switch"

switch variabila

case caz_1

grup_de_instructiuni_1

case caz_2

grup_de_instructiuni_2

case caz_(n-1)

grup_de_instructiuni_(n-1)

otherwise

grup_de_instructiuni_n

end

Exemplu:

Sa se construiasca si sa se apeleze o functie care ofera reduceri pentru o companie de transport în functie de ziua din saptamâna în care se efectueaza cursa. Functia va avea ca argument de intrare indicele zilei saptamânii si va furniza valoarea reducerii.

function y=reducere(zi)

if (zi>=1)&(zi<=7)

switch zi

case 1

y=100;

case 2

y=80

case 3

y=50;

case 4

y=20;

otherwise

y=0;

end;

else

error('Nu exista ziua respectiva !');

end;

Functii de control

permit testarea conditiilor relationale si logice în tablouri de date sau matrice;

se utilizeaza împreuna cu instructiunea "if".

exist: verifica daca variabilele sau functiile argument sunt definite; testeaza totodata existenta unei variabile sau a unui fisier, situatie în care numele variabilei sau fisierului trebuie sa fie scris între apostrofuri:

any: testeaza daca cel putin un element al unei matrice verifica o conditie logica;

all: testeaza daca toate elementele unei matrice verifica o conditie logica;

find: returneaza indicii elementelor diferite de zero;

isnan: testeaza daca elementele unei matrici sunt NaN;

isinf: testeaza daca elementele unei matrice sunt infinite;

finite: testeaza daca elementele unei matrice sunt finite;

isempty: returneaza 1 daca o matrice este goala si 0 în caz contrar.

clear

A 1 0 5; 2 0 6; -4 7 9]

B 1 1/0 3; 0/0 2 5]

C

x=exist('A')

z=any(A>3)

t=all(A>3)

u=find(A)

g=isnan B)

h=isinf B)

m=finite(A)

n=finite B)

p=isempty(C)

Vectorizarea calculelor:

de câte ori este posibil, se recomanda ca în locul ciclurilor for si while sa se utilizeze vectorizarea calculelor;

solutia reduce semnificativ timpul de calcul.

t=1:12;

z=pi/6*t;

y=sin(z)

Exercitii propuse:

Sa se scrie un program care calculeaza suma patratelor numerelor de la 1 la 100.

Sa se scrie un program care citeste elementele unei matrice si le numara pe cele care sunt mai mari ca 10.

Sa se scrie un program care atribuie o reducere unui grup de turisti în functie de numarul lor si de lungimea destinatiei (exista mai multe variante de realizare a programului).

Sa se scrie o functie care calculeaza radacinile reale ale ecuatiei de gradul II. Daca nu exista radacini reale, se va afisa un mesaj de eroare.

Sa se scrie o functie care afiseaza numele si numarul de zile ale unei luni în functie de indicele acesteia.


Document Info


Accesari: 1639
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 )