2. Programi u matlabu
Do sada smo sve operacije u matlabu obavljali u
komandnoj liniji.
Ujedno to je bio i najjednostavniji nain za rad.
Sve naredbe koje smo unosili se gube nakon
zatvaranja programa.
Zbog toga se namee potreba za koji e ostati
zapisan i trajno sauvan.
Ovakvi fajlovi imaju ekstenziju .m i nazivaju se m
fajlovi.
Postoje dvije vrste m fajlova: komandni (script) i
funkcijski (function) fajlovi.
3. PISANJE M-FAJLOVA U
NOTEPAD-U
U MATLAB-u se mogu izvr邸avati naredbe MS-DOS-a i
Windows-a.
Te naredbe se oznaavaju usklinikom !. Ove naredbe
imaju su邸tinski tri oblika:
!naredba, otvara se prozor aplikacije koja je pozvana (ili
MS-DOS prozor) a povratak u MATLAB je mogu tek nakon
ga邸enja ove aplikacije,
!naredba&, slino kao gore ali je mogu povratak u
MATLAB bez zatvaranja pozvane aplikacije i
!naredba, pozvana aplikacija se otvara na nivou ikone.
Na primjer naredba
!notepad
pokree program Notepad
4. Kreiranje m fajlova
Komandni ili skript fajl predstavla niz MATLAB-
ovih komandi snimlenih kao zaseban program,
koje se izvr邸avaju kada se fajl pozove.
Da bi se otvorio novi fajl, u MATLAB-u se koristi
opcija File/New/Script ime se otvara
neimenovani prazan fajl Untitled.
Pisanje programa se vr邸i na uobiajen nain.
Strelicama se pomijera kursor, u novi red se ide
pritiskom na tipku Enter, sa kojom se mo転e stvarati i
dodatni red izmeu dva ve napravljena reda.
Brisanje karaktera se vr邸i tipkom<Bck Spc> (karakter
unazad), odnosno tipkom <Del> (karakter gdje se
kursor nalazi).
5. Kreiranje m fajlova
Nakon zavr邸etka rada sa editorom, program se
snima aktiviranjem opcije File/Save, prilikom ega
je neophodno zadati ime fajla.
Imena MATLAB fajlova su obavezno sa
ekstenzijom .m.
Po転eljno je na poetku programa ispisati
komentare. Linija sa komentarom poinje znakom
%.
Komentari se mogu ispisivati i u programu radi
njegovog jednostavnijeg praenja.
Komentar otkucan na poetku programa dobija se
sa help ime_fajla.
6. Kreiranje m fajlova
Otvaranje ve napisanog fajla se mo転e se
postii sa File/Open M-file pa se zatim izabere
fajl sa diska koji se 転eli otvoriti.
Fajl se mo転e potra転iti po drugim diskovima na
raunaru, po direktorijumima tekueg diska ili
u spisku datih fajlova.
Ako je fajl koji se 転eli prepraviti meu
posljednjim sa kojim se radilo, on se nalazi u
MATLAB-ovom File meniju pod rednim brojem
od 1 do 4.
7. Primjer 1
Napisati program za crtanje grafika funkcije
f(x)=cos(x), x=(-pi,pi)
Program sauvati pod imenom proba.
% Crtanje grafika funkcije f(x)=cos(x)
x=-pi:pi/20:pi;
y=cos(x);
plot(x,y)
Program se izvr邸avava ukucavanjem imena
bez ekstenzije. U na邸em primjeru:
損 proba
8. Primjer 2
Napisati fajl za odreivanje zbira kvadrata
prvih deset prirodnih brojeva i sauvati fajl pod
imenom zbir
Prvo je potrebno iz menija File komandnog
prozora izabrati komandu New, a zatim opciju
M-file. U novootvorenom prozoru ukucati
program za
izraunavanje tra転enog zbira.
9. Primjer 2
% ime ovog m fajla ce biti zbir
x=1:10;
x=[x.^2];
z=sum(x)
Fajl mora da se snimi naredbom Save As iz menija
File. U ovom primjeru snima se pod imenom zbir.
Svaki put kada nam je potreban ovaj rezultat, dovolno
je samo otkucati re zbir, pod kojim smo upamtili ovaj
fajl i pritisnuti taster Enter. Kao rezultat dobijamo:
>>zbir
z=
385
10. Zadatak 1
Napisati m fajl koji crta grafik funkcije y=x.^2 -
2.*x +1 u intervalu (-5,5).
Napisati m fajl koji crta grafik funkcije y= cos(x)
+ sin(x) u intervalu (-5,5).
11. INTERAKCIJA SA
KORISNIKOM
U grupu naredbi koje nam omoguavaju da u toku
izvr邸avanja programa unosimo promjenljive i djelove
programa, svrsta emo naredbe input i keyboard.
Naredba input ima oblik:
input('tekst po zelji ')
Poslije ove naredbe raunar ispisuje dati tekst, pravi
pauzu i eka da unesemo broj, (ili vektor ili matricu).
Uneseni broj raunar smje邸ta pod imenom ans, pa je
u velikom broju sluajeva potrebno 転eljenoj varijabli
pridru転iti vrijednost ans.
Na primjer, ukoliko smo unijeli varijablu koju u
programu ozna avamo sa a, onda poslije linije sa
naredbom input slijedi linija sa:
a=ans;
12. Primjer 3
Izmjeniti fajl pod imenom zbir. tako da broj
sabiraka bude proizvolan. Vrijednost promjenlive
unijeti naredbom input.
x=input('unesi broj 転eljenih sabiraka: ')
y=1:x;
y=[y.^2];
S=sum(y)
Svaki put kada nam je potreban zbir kvadrata
proizvolno mnogo brojeva, dovolno je samo
otkucati re zbir, pod kojom smo upamtili ovaj fajl
i uneti
broj 転elenih sabiraka.
13. Primjer 4
Napisati program koji crta funkciju y=a.*x na
intervalu (-1,1), a je parametar koji treba
zadati.
input ('Unesi a: ');
a=ans;
x=[-1:001:1];
y=a.*x;
plot(x,y);
14. Zadatak 2
Napisati program koji crta funkciju y=a.*cos(x)
na intervalu (-pi,pi), a je parametar koji treba
zadati.
15. FUNKCIJSKI FAJLOVI
Funkcijski fajl omoguava korisniku MATLAB-a
da stvara nove funkcije.
Funkcijski fajlovi se pi邸u i ureuju isto kao i
skript fajlovi.
Osnovna osobina funkcijskog fajla je da ima
ulaz i izlaz.
Funkcijski fajlovi moraju u prvoj liniji da sadr転e
naredbu function .
16. FUNKCIJSKI FAJLOVI
Naredba je oblika:
Function [ izlazni argumenti y1, y2,] = ime
funkcije (ulazni argumenti x1, x2,)
Function ime funkcije (x1, x2 ,)
Function [y1, y2, ] = ime funkcije
Posle ovoga izraza sljedi niz MATLAB - ovih
komandi i izraza.
17. Primjer 5
Formirati funkcijski fajl u kome se defini邸e
nova funkcija f ( x )= e x + sinx i snimiti ga pod
imenom fi.
% funkcijski fajl
% ime nove funkcije je fi
function y=fi(x)
y=exp(x)+sin(x);
18. Primjer 5
Ako 転elimo da izraunamo vrijednost ove
funkcije, dovolno je da pozovemo funkciju fi i
defini邸emo vrednost promjenlive, na primer
x=pi/2.
>> fi(pi/2)
ans =
5.8105
19. Zadatak 3
Formirati funkcijski fajl u kome se defini邸e
nova funkcija f ( x )= e x + sinx pod imenom fa,
a da se vrednost nezavisno promenlive unesi
kori邸enjem naredbe input