Sie sind auf Seite 1von 21

Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

I čas
Početak rada u MATLAB-u.
Predavanja
Radno okruženje. Komandni prozor. Skalarne promenjljive. Operacije sa skalarima.
2 časa
Formatiranje rezultata. Elementarne matematičke funkcije. Primeri primene MatLab-a.

Vežbe Rad na računaru:


1 čas osnovni zadaci rada sa skalarima.

1.1. O MATLAB-u
MATLAB je jezik koji nudi velike mogućnosti kada su u pitanju tehnička
proračunavanja. MATLAB integriše proračunavanja sa vizuelizacijom i programiranjem
kroz jedno okruženje koje je lako za korišćenje i u kome se i problemi i rešenja
izražavaju pomoću uobičajene matematičke notacije.

Karakteristične oblasti koje su obuhvaćene MATLAB-om su:


Matematika i proračunavanja
Razvoj algoritama
Prikupljanje podataka
Modeliranje, simulacija i izrada prototipova
Analiza, istraživanje i vizuelizacija podataka
Naučna i inženjerska grafika
Razvoj aplikacija, uključujući izgradnju grafičkog korisničkog interfejsa

MATLAB je interaktivni sistem u kome osnovni element podataka predstavlja


niska koja ne zahteva dimenzionisanje. Time je omogućeno rešavanje mnogih
problema vezanih za tehnička proračunavanja, posebno onih koji su formulisani
pomoću matrica ili vektora, i to za samo mali deo vremena od onog koje bi inače bilo
potrebno da se napiše odgovarajući program u skalarnom neinteraktivnom jeziku kao
što je C ili Fortran.

Naziv MATLAB je skraćenica od matrična laboratorija (matrix laboratory).


MATLAB je izvorno napisan da bi se omogućio lakši pristup matričnom softveru
razvijenom u okviru projekata LINPACK i EISPACK. Danas, MATLAB mašina u sebi
sadrži LAPACK i BLAS biblioteke, i obuhvata najsavremeniji softver za matrične
proračune.

MATLAB se razvijao tokom godina na osnovu doprinosa koji su davali mnogi


korisnici. Postao je standardno nastavno sredstvo na univerzitetima, i to kako na
uvodnim tako i na naprednim kursevima iz matematike i različitih inženjerskih i naučnih
disciplina. U industrijskom okruženju, MATLAB predstavlja alatku izbora u oblasti

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.1


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

istraživanja, razvoja i analize.

MATLAB obuhvata familiju dodatnih rešenja vezanih za specifične primene,


predstavljenih u vidu panela sa alatima. Od velikog značaja za većinu korisnika
MATLAB-a, paneli sa alatima pružaju mogućnost da se lako savlada primena neke
specijalizovane tehnologije. Paneli sa alatima su sveobuhvatni skupovi MATLAB
funkcija (M-datoteka) kojima se proširuje MATLAB okruženje u cilju rešavanja
određenih klasa problema. Oblasti za koje postoje paneli sa alatima obuhvataju obradu
signala, kontrolne sisteme, neuronske mreže, fazi logiku, talasiće (wavelets), simulaciju
i mnoge druge.

MATLAB sistem se sastoji od pet glavnih delova:

Desktop alati i razvojno okruženje

Ovo je skup alatki i funkcionalnosti koje olakšavaju korišćenje MATLAB funkcija i


datoteka. Mnogi od ovih alata predstavljaju grafičke korisničke interfejse. Ovim skupom
su obuhvaćeni MATLAB desktop i komandni prozor, prozor s prethodnim komandama,
editor i debager, analizator koda i ostali izveštaji, pretraživač za pregledanje sistema za
pomoć (help), radni prostor, datoteke i putanja za pretraživanje.

MATLAB biblioteka matematičkih funkcija

Ovo je veoma širok skup algoritama za proračunavanje, počev od elementarnih


funkcija, kao što su zbir, sinus, kosinus kao i operacije sa kompleksnim brojevima, pa
do složenijih funkcija kao što su invertovanje matrice, izračunavanje sopstvenih
vrednosti matrice, Beselove funkcije i brze Furijeove transformacije.

MATLAB jezik

Ovo je jezik matrica/niski visokog nivoa sa naredbama za kontrolu toka,


funkcijama, strukturama podataka, ulazom/izlazom i karakteristikama objektno
orijentisanog programiranja. On omogućava kako "programiranje na malo" odnosno
brzo kreiranje programa za jednokratnu upotrebu tako i "programiranje na veliko"
odnosno kreiranje velikih i složenih aplikativnih programa.

Grafika

MATLAB poseduje značajne mogućnosti za prikazivanje vektora i matrica u


obliku grafova, kao i za označavanje i štampanje ovih grafova. Obuhvata funkcije
visokog nivoa za vizuelizaciju dvodimenzionalnih i trodimenzionalnih podataka, obradu
slike, animaciju i prezentaciju grafike. Takođe sadrži funkcije niskog nivoa koje
omogućavaju potpuno podešavanje izgleda grafike kao i izgradnju kompletnog

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.2


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

grafičkog korisničkog interfejsa za razvijenu MATLAB aplikaciju.

Spoljni MATLAB interfejsi/API

Ovo je bilbioteka koja omogućava pisanje C i Fortran programa koji se povezuju


sa MATLAB-om. Obuhvaćene su funkcionalnosti za poziv rutina iz MATLAB-a
(dinamičko povezivanje), pozivanje MATLAB-a kao mašine za proračunavanje, i za
čitanje i ispisivanje MAT-datoteka.

1.2. POKRETANJE MATLAB-A I NJEGOVI PROZORI


Kada se program pokrene, prikazuje se prozor (slika 1.1) koji sadrži tri manja
prozora - komandni prozor (Command Window), prozor tekućeg direktorijuma (Current
Directory) i prozor s prethodnim komandama (Command History). To je standardan
izgled MATLAB-a, u kome, sem navedenih, postoji još pet prozora. U tabeli 1.1
navodeni su svi MATLAB-ove prozori i njihove namene. MATLAB-ovim alatkama i
svojstvima se pristupa pomoću dugmeta Start u donjem levom uglu velikog prozora.

U ovom odeljku su dati kratki opisi četiri prozora: komandnog prozora (Command
Window), grafičkog prozora (Figure), prozora za pisanje programa (Editor) i prozora
sistema za pomoć (Help), a detaljniji opisi su dati kasnije kroz konkretne primere
korišćenja.

Komandni prozor

Glavni MATLAB-ov prozor, koji se automatski otvara kada se MATLAB pokrene


je komandni prozor. Za rad je najpogodnije da samo komandni prozor bude vidljiv, a da
se ostali prozori pojedinačno zatvore. To se postiže i kada se u meniju Desktop izabere
Desktop Layout, a u podmeniju koji se otvara stavka Command Window Only.

Slika 1.1. Standardni izgled MATLAB-ove radne površine

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.3


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Tabela 1.1. MATLAB-ovi prozori

Prozor Namena

Komandni prozor (Command Glavni prozor za unošenje promenljivih i izvršavanje programa.


Window)

Grafički prozor (Figure) Sadrži rezultate grafičkih komandi.

Prozor za pisanje programa Za pisanje skript datoteka i funkcijskih datoteka, te za otkrivanje i


(Editor) otklanjanje grešaka u njima.

Prozor sistema za pomoć Sadrži pomoćne informacije.


(Help)

Prozor za pokretanje Omogućava pristupanje alatkama, demonstracijama i


(Launch Pad Window) dokumentaciji.

Prozor s prethodnim Sadrži komande unesene u komandnom prozoru.


komandama (Command
History)

Prozor radnog prostora Sadrži podatke o svim upotrebljenim promenljivama.


(Workspace Window)

Prozor tekućeg direktorijuma Prikazuje datoteke u tekućem direktorijumu.


(Current Directory)

Grafički prozor

Grafički prozor se automatski otvara kada se izvršavaju grafičke komande; sadrži


grafiku koju su te komande izgenerisale. Na slici 1.2 dat je primer grafičkog prozora.

Slika 1.2: Primer grafičkog prozora.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.4


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Prozor za pisanje programa:

U prozoru za pisanje programa se pišu i uređuju programi. Prozor se otvara iz


menija File u komandnom prozoru. Primer je dat na slici 1.3. Ovaj prozor se koristi za
pisanje skript datoteka i za pisanje funkcijskih datoteka.

Slika 1.3: Primer prozora za pisanje programa.

Prozor sistema za pomoć

Prozor sistema za pomoć (Help) sadrži ugrađenu pomoć, a može se otvoriti iz


menija Help na traci menija svakog MATLAB-ovog prozora. Interaktivan je i služi za
dobijanje pomoćnih informacija o bilo kojoj komponenti ili svojstvu MATLAB-a. Na slici
1.4 prikazan je otvoren prozor sistema za pomoć.

Kada se prvi put pokrene MATLAB, njegov prozor izgleda kao na slici 1.1.
Prozorima se upravlja iz menija Desktop, preko stavke Desktop Layout.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.5


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Slika 1.4: Prozor sistema za pomoć

1.3. RAD U KOMANDNOM PROZORU


Komandni prozor je glavni MATLAB-ov prozor i služi za izvršavanje komandi,
otvaranje prozora, pokretanje programa koje je napisao korisnik i upravljanje MATLAB-
om. Primer komandnog prozora, sa nekoliko jednostavnih komandi dat je na slici 1.5.

Kursor smešten iza


komandnog odziva (>>) znači da
korisnik može da upiše komandu

Slika 1.5: Komandni prozor

Napomene o radu u komandnom prozoru:

Da bi se upisala komanda, kursor mora biti neposredno iza komandnog


odziva (»).

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.6


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Upisana komanda biće izvršena kada se pritisne <Enter>. Međutim, izvršava


se samo poslednja upisana komanda. Sve prethodno izvršene komande
ostaju nepromenjene.
U isti red se može upisati više komandi ako se razdvoje zarezom. Kada se
pritisne <Enter>, komande će biti izvršene redom, sleva nadesno.
Ne može se vratiti u prethodni red komandnog prozora, izmeniti nešto i zatim
ponovo izvršiti tako izmenjena komanda.
Ako se pritisne taster sa strelicom nagore, iza komandnog odzivnika (»),
prikazaće se prethodna komanda. Tako napisana komanda se može izmeniti
(ako treba) i izvršiti. Strelicom nadole redom se prikazuju sve prethodno
upisane komande.
Ako je komanda preduga da bi stala u jedan red, upišu se tri tačke (...) i
pritisnite <Enter>. Nastavak komande se piše u sledećem redu. Komanda se
može protezati na više redova i sadržati do 4096 znakova.

Tačka-zarez (;)

Komanda se izvršava kada se upiše u komandni prozor i pritisne <Enter>. I re-


zultat komande se prikazuje u komandnom prozoru. Ukoliko se na kraju komande
unese tačka-zarez (;), njen rezultat se neće prikazati. To je podesno kada je rezultat
očigledan ili poznat, ili kada je veoma veliki.

Ukoliko se u isti red upiše više komandi, njihovi rezultati se neće prikazati ako se
razdvoje znakovima tačka-zarez umesto zarezima.

Znak procenta (%)

Kada se na početak reda upiše znak procenta (%), red se označava kao
komentar. Tako označeni redovi se ne izvršavaju. Ukoliko se znak % i odgovarajući
tekst (komentar) upišu iza komande (u istom redu), to neće uticati na izvršavanje
komande.

Obično nema potrebe da se u komandnom prozoru pišu komentari, ali se opisi i


objašnjenja u vidu komentara često dodaju programima.

Komanda clc

Komanda clc (clc<Enter>) briše sadržaj komandnog prozora. Posle dužeg rada u
komandnom prozoru, njegov sadržaj može postati predugačak. Komanda clc briše
sadržaj komandnog prozora i nema nikakvih drugih efekata. Na primer, sve prethodno
definisane promenljive i dalje postoje i mogu se upotrebljavati. Prethodno upisane
komande i dalje se mogu prikazati strelicom nagore.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.7


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

1.4 ARITMETIČKE OPERACIJE SA SKALARIMA


U ovom odeljku biće razmotrene samo aritmetičke operacije sa skalarima, dakle
s pojedinačnim brojevima. Kao što će biti objašnjeno u nastavku poglavlja, brojevi se u
aritmetičkim proračunima mogu upotrebljavati direktno (kao na kalkulatoru) ili se mogu
pridružiti promenljivama, koje se potom koriste za izračunavanja. Simboli aritmetičkih
operacija su:

Operacija Simbol Primer

Sabiranje + 5+3

Oduzimanje - 5-3

Množenje * 5*3

Deljenje zdesna / 5/3

Deljenje sleva \ 5 \3 = 3/5

Stepenovanje ^ 5^3 (znači 53 = 125)

Svi simboli (sem deljenja sleva) su isti kao na većini kalkulatora. Za skalare je
deljenje sleva operacija inverzna deljenju zdesna. Međutim, deljenje sleva se uglavnom
upotrebljava za operacije sa nizovima.

1.4.1 Prioritet izvršavanja


MATLAB izvršava operacije prema sledećem redosledu prioriteta, koji je isti kao
na većini kalkulatora:

Prioritet Matematička operacija


Najviši Zagrade. Kada su zagrade ugneždene, prvo se
izračunava unutrašnja zagrada
Drugi po redu Stepenovanje
Treći po redu Množenje, deljenje (jednak prioritet)
Četvrti po redu Sabiranje i oduzimanje

U izrazu koji sadrži više operacija, operacije višeg prioriteta izvršavaju se pre
operacija nižeg prioriteta. Ako dve ili više operacija imaju isti prioritet, izraz se
izračunava sleva udesno. Redosled izračunavanja se može promeniti zagradama.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.8


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

1.4.2 Korišćenje MATLAB-a kao kalkulatora


MATLAB je najjednostavnije koristiti kao kalkulator, kada se u komandni prozor
upiše matematički izraz i pritisne <Enter>. MATLAB će izračunati izraz, napisati ans = i
prikazati numerički rezultat u sledećem redu. To je pokazano u vežbi 1.1.

Vežba 1.1.

Obratiti pažnju na redosled izvršavanja

Tri tačke (...) se upisuju da bi se izraz nastavio u sledećem redu

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.9


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

1.5. FORMATI PRIKAZA REZULTATA


Korisnik može da izabere format u kojem MATLAB prikazuje rezultat na ekranu.
U vežbi 1.1, za ispisivanje rezultata korišćen je fiksan zarez i 4 decimale; to je kratki
(short) format koji je podrazumevani format za numeričke vrednosti. Izlazni format se
zadaje komandom format, nakon čega se svi rezultati prikazuju u to formatu. U tabeli
1.2 navedeno je i opisano nekoliko dostupnih formata.

MATLAB ima više formata za prikazivanje brojeva. Pojedinosti o tim formatima se


mogu dobiti ako se u komandni prozor upiše help format. Format prikaza na ekranu ne
utiče na preciznost kojom MATLAB izračunava i pamti brojeve. 1

Tabela 1.2. Formati prikaza

Komanda Opis Primer


format short Fiksni zarez sa četiri decimale za decimalne >> 290/7
brojeve u opsegu: 0.001 <broj< 1000. Izvan ans =
ovog opsega primenjuje se format short e. 41.4286
format long Fiksni zarez sa 14 decimala za decimalne >> 290/7
brojeve u opsegu: 0.001 <=broj<= 100. Izvan ans =
ovog opsega primenjuje se format long e. 41.42857142857143
format short e Naučna notacija sa četiri decimale. >> 290/7
ans =
4.1429e+001
format long e Naučna notacija sa 15 decimala. >> 290/7
ans =
4.142857142857143e+001
format short g Pet cifara s fiksnim ili pokretnim zarezom. >> 290/7
ans =
41.429
format long g Petnaest cifara s fiksnim ili pokretnim >> 290/7
zarezom. ans =
41.4285714285714
format bank Dve decimale. >> 290/7
ans =
41.43
format compact Uklanja prazne redove da bi više redova sa sadržajem stalo na ekran.
format loose Dodaje prazne redove (obrnuto od compact).

1
U svim primerima MATLAB koda i zadacima, umesto decimalnog zareza koristi se
decimalna tačka

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.10


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

1.6. UGRAĐENE ELEMENTARNE MATEMATIČKE FUNKCIJE


Sem osnovnih aritmetičkih operacija, izrazi u MATLAB-u mogu sadržati i funkcije.
MATLAB ima veoma veliku biblioteku ugrađenih funkcija, a korisnik može definisati i
svoje funkcije. Funkcija se poziva imenom i argumentom u zagradama. Na primer,
funkcija sqrt (x) izračunava kvadratni koren (engl. square root) broja. Ime joj je sqrt, a
argument je x. Argument funkcije može biti broj, promenljiva kojoj je pridružena
numerička vrednost, ili izraz koji sadrži brojeve i/ili promenljive. I argumenti i izrazi
mogu sadržati funkcije. Vežba 1.2 pokazuje primere korišćenja funkcije sqrt (x) kada se
MATLAB upotrebljava kao kalkulator sa skalarima.

Vežba 1.2: Korišćenje ugrađene funkcije sqrt

U tabelama od 1.3 do 1.5 navedene su najčešće korišćene elementarne


matematičke funkcije ugrađene u MATLAB. Celokupan spisak funkcija razvrstanih po
kategorijama se može prikazati u prozoru sistema za pomoć (Help).

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.11


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Tabela 1.3. Elementarne matematičke funkcije

Funkcija Opis Primer


sqrt(x) Kvadratni koren >> sqrt(81)
ans=
9
exp(x) Eksponencijalna funkcija (ex) >> exp(5)
ans=
148.4132
abs(x) Apsolutna vrednost >> abs(24)
ans =
24
log(x) Prirodni logaritam - logaritam sa >> log(1000)
osnovom e (ln) ans =
6.907S
log10(x) Logaritam sa osnovom 10 >> log10(1000)
ans =
3.000
factorial(x) Faktorijel od x (x!) gde x mora biti >> factorial(5)
pozitivan ceo broj ans =
120

Tabela 1.4: Trigonometrijske funkcije

Funkcija Opis Primer


sin(x) Sinus ugla x (u radijanima) >> sin(pi/6)
ans =
0.5000
cos(x) Kosinus ugla x (u radijanima) >> cos(pi/6)
ans=
0.8660
tan(x) Tangens ugla x (u radijanima) >>tan(pi/6)
ans=
0.5774
cot(x) Kotangens ugla x (u radijanima) >> cot(pi/6)
ans =
1.7321

Inverzne trigonometrijske funkcije su asin(x), acos(x), atan(x) i acot(x).


Hiperboličke trigonometrijske funkcije su sinh(x), cosh(x), tanh(x) i coth(x). U primerima
iz prethodne tabele kao oznaka za π korišćeno je pi.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.12


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Tabela 1.5: Funkcije za zaokruživanje

Funkcija Opis Primer


round(x) Zaokruživanje na najbliži ceo broj >> round(17/5)
ans=
3
fix(x) Zaokruživanje naniže >> fix(13/5)
ans=
2
ceil(x) Zaokruživanje naviše >> ceil(11/5)
ans=
3
floor(x) Zaokruživanje na najbliži manji ceo broj >> floor(-9/4)
ans=
-3
rem (x,y) Vraća ostatak deljenja x sa y >> rem(13,5)
ans =
3
sign(x) Funkcija signum: vraća 1 kada je x > 0, >> sign(5)
-1 kada je x < 0, i 0 kada je x = 0 ans =
1

1.7. DEFINISANJE SKALARNIH PROMENLJIVIH


Promenljiva je ime koje sadrži najmanje jedno slovo a može biti i proizvoljna
kombinacija slova i cifara (s tim da mora započinjati slovom) kojem je pridružena
numerička vrednost. Promenljiva kojoj je pridružena numerička vrednost može se
upotrebljavati u matematičkim izrazima, funkcijama i svim MATLAB-ovim iskazima i
komandama. Promenljiva je zapravo ime određene lokacije u memoriji. Kada se
definiše nova promenljiva MATLAB joj dodeljuje odgovarajuću lokaciju u memoriji gde
se čuva njoj pridružena vrednost. Svaki put kada se upotrebi ime promenljive, MATLAB
koristi njoj dodeljenu vrednost. Ako se promenljivoj dodeli nova vrednost, menja se
sadržaj odgovarajuće lokacije u memoriji.

1.7.1. Operator dodele


U MATLAB-u se znak = naziva operatorom dodele (assignment operator). Ovaj
operator dodeljuje vrednost promenljivoj.

Ime_promenljive = numerička vrednost ili izraz


Levo od operatora dodele može biti samo jedno ime promenljive.

Desno može biti broj ili izraz koji sadrži brojeve i/ili promenljive kojima su pret-

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.13


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

hodno dodeljene numeričke vrednosti. Kada se pritisne taster Enter, numerička


vrednost s desne strane dodeljuje se promenljivoj, a MATLAB u sledeća dva reda
prikazuje promenljivu i njoj dodeljenu vrednost.

Kako radi operator dodele?

Poslednji iskaz (x=3x-12) ilustruje razliku između operatora dodele i znaka


jednakosti. Kada bi u tom iskazu znak = označavao jednakost, vrednost x bi bila 6
(kada se reši jednačina po x).

Sledi primer upotrebe prethodno definisane promenljive u definisanju nove


promenljive.

Ako se na kraj reda upiše tačka-zarez pa zatim pritisne <Enter>, MATLAB neće

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.14


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

prikazati promenljivu i njoj dodeljenu vrednost, ali će joj vrednost ipak dodeliti i smestiti
je u memoriju.

Kada se upiše ime postojeće promenljive i pritisne <Enter>, u sledeća dva reda
prikazaće se ime i vrednost te promenljive.

Primer sa tačkazarezom

U isti red se može upisati nekoliko dodeljenih vrednosti. Razdvajaju se zarezima


(posle zareza se može otkucati više razmaka). Kada se pritisne <Enter>, vrednosti se
dodeljuju sleva udesno, a promenljive i njima dodeljene vrednosti prikazuju se u
sledećim redovima. Ukoliko se umesto zareza otkuca tačka-zarez, vrednost
promenljive neće biti prikazana. Na primer, promenljivama a, b i c vrednosti se mogu
dodeliti u istom redu

Postojećoj promenljivoj može se dodeliti novu vrednost. Na primer:

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.15


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Već definisana promenljiva može se upotrebiti kao argument funkcije. Na primer:

1.7.2. Pravila za imena promenljivih


Imena promenljivih u MATLAB-u mogu imati do 63 znaka, mogu sadržati slova,
cifre i podvlake, i moraju počinjati slovom. MATLAB pravi razliku između velikih i malih
slova, na primer, AA, Aa, aA i aa su imena četiri različite promenljive.

Treba izbegavati korišćenje imena rezervisanih reči, tj. nazive ugrađenih funkcija
za promenljive (cos, sin, exp, sqrt itd.). Funkcija čije je ime upotrebljeno za definisanje
promenljive, više se ne može koristiti.

1.7.3. Unapred definisane promenljive


Pojedine često korišćene promenljive automatski su definisane čim se MATLAB
pokrene. Među njima su:

ans Promenljiva kojoj se dodeljuje vrednost poslednjeg izraza koji nije


dodeljen nekoj drugoj promenljivoj (vežba 1.1). Ako korisnik ne
dodeli vrednost izraza nekoj promenljivoj, MATLAB ga automatski
dodeljuje promenljivoj ans.
pi Broj π
eps Najmanja razlika izmedu dva broja koju MATLAB još uvek može da
prepozna. Jednaka je 2A(-52), što je približno 2.2204e-016.
inf Označava beskonačno veliku vrednost.
i Definisano kao imaginarna jedinica, što je: 0 + 1 .0000i.
j Isto što i promenljiva i.
NaN Skraćeno od Not-a-Number (nije broj). Upotrebljava se kada
MATLAB ne može da izračuna numeričku vrednost. Na primer,
rezultat operacije 0/0.

Vrednost unapred definisanih promenljivih može biti proizvoljno redefinisana.


Promenljive pi, eps i inf obično se ne redefinišu. Ostale unapred definisane promen-
ljive (i i j), katkada se redefinišu (obično unutar petlji za indeksne promenljive -
brojače), ukoliko se u datom slučaju ne koriste kompleksni brojevi.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.16


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

1.8. KOMANDE ZA RAD S PROMENLJIVAMA


Sledeće komande se koriste za uklanjanje promenljivih odnosno dobijanje
podataka o svim postojećim promenljivama. Kada se neka od njih upiše u komandni
prozor i pritisne Enter, prikazaće se podaci ili izvršiti jedan od dole navedenih
postupaka.

Komanda Ishod
Clear Uklanja sve promenljive iz memorije.
clear x y z Uklanja iz memorije promenljive x, y i z.
Who Prikazuje imena promenljivih koje postoje u memoriji.
Whos Prikazuje imena promenljivih koje postoje u memoriji, njihovu
veličinu, klasu i veličinu u bajtovima.

1.9. PRIMERI PRIMENE MATLAB-A


Vežba: Trigonometrijska formula

x tan x + sin x
Trigonometrijska formula data je jednačinom: cos 2 = . Proveriti da
2 2 tan x
li je formula ispravna izračunavanjem vrednost obe strane jednačine, uz zamenu
π
x= .
5

Vežba: Geometrija i trigonometrija

Četiri kružnice su smeštene kao na slici. U svakoj tački dodira kružnice su


tangentne jedna na drugu. Odrediti rastojanje između centara C2 i C4.

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.17


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Poluprečnici kružnica su: R1 = 16 mm, R2 = 6.5 mm, R3 = 12 mm i R4 = 9.5 mm

Linije koje povezuju centre kružnica čine četiri trougla. Poznate su dužine svih
stranica dva takva trougla, ∆C1C2C3 i ∆C1C3C4. Taj podatak se koristi za izračunavanje
uglova γ 1 i γ 2 tih trouglova pomoću kosinusne teoreme. Na primer, γ 1 se izračunava
iz jednačine:

(C2C3)2 = (C1C2)2 + (C1C3)2-2(C1C2)(C1C3)cos γ 1

Zatim se izračuna dužina stranice C2C4 pomoću trougla ∆C1C2C4 . I tu pomaže


kosinusna teorema (poznate su dužine C1C2 i C1C3, a ugao γ 3 je zbir uglova γ 1 i γ 2

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.18


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Vežba: Provođenje toplote

Telo početne temperature T0 smešteno je u trenutku t=0 u prostor konstantne


temperature Ts. Temperatura tela će se menjati prema jednačini:

T=TS + (T0-TS) e-kt

gde je T temperatura tela u trenutku t, a k je konstanta. Konzerva piva


temperature 120° F stavljena je u frižider unutrašnje temperature 38° F. Izračunati
temperaturu konzerve posle tri sata (zaokruženo na najbliži stepen). Pretpostaviti da je
k = 0.45. Najpre se definišu sve promenljive, a potom se izračuna temperatura jednom
MATLAB-ovom komandom.

Vežba: Složeno obračunavanje kamate

Stanje B na računu posle t godina štednje, ako je glavnica P uložena uz godišnju


kamatnu stopu r, a kamata se pripisuje n puta godišnje, iznosi:

nt
⎛ r⎞
B = P ⎜1 + ⎟ (1)
⎝ n⎠

Ako se kamata pripisuje jednom godišnje, stanje na računu iznosi:

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.19


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

B = P(1 + r )
t
(2)

Na prvi račun je uloženo 5.000 € na 17 godina uz godišnje pripisivanje kamate.


Na drugi račun uložen je isti iznos, ali uz mesečno pripisivanje kamate. Kamatna stopa
za oba računa je 8.5%. Koliko godina i meseci štednje na drugom računu treba da
prođe da bi njegovo stanje dostiglo stanje prvog računa nakon 17 godina štednje.

Rešenje:

1. Na osnovu jednačine (2) izračunati B za 5.000 € uloženih na 17 godina


uz godišnje pripisivanje kamate

2. Izračunati t za B izračunato u prethodnom koraku, pomoću formule (1)


za mesečno pripisivanje kamate

3. Pretvoriti t u odgovarajući broj godina i meseci

>> P=5000;r=0.085;ta=17;n=12;
>> B=P*(1+r)^ta
>> t=log(B/P)/(n*log(1+r/n))
>> godina=fix(t)
>> meseci=ceil((t-godina)*12)

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.20


Skripta iz Informatike II Rudarsko-geološki fakultet Beograd

Vežbe za samostalan rad

U pravouglom trouglu sa stranicama čije su katete 11 cm i 21 cm izračunati


hipotenuzu i uglove (u stepenima). (acos)
Rastojanje d od tačke (x0,y0) od linije Ax+By+Cz=0 dato je formulom:
Ax0 + By 0 + C
d= . Izračunati rastojanje tačke (2,3) od linije 3x+5y-6=0.
A2 + B 2
Prvo definisati promenljive A,B,C, x0, y0, pa potom izračunati d. (abs,sqrt)
π
tan( ln 8)
2 5π 7π 6
Izračunati: cos ( ) sin( ) +
6 8 7

Prof.dr Ivan Obradović, dipl.mat, Mr. Ranka Stanković, dipl.mat 1.21

Das könnte Ihnen auch gefallen