CommLab 00. CommLab /2017 ( ) Osnove Matlab-a. 1. Uvod

Size: px
Start display at page:

Download "CommLab 00. CommLab /2017 ( ) Osnove Matlab-a. 1. Uvod"

Transcription

1 CommLab 00 Osnove Matlab-a 1. Uvod Potreba za brzom obradom laboratorijskih mernih rezultata, kao i potreba za računanjem zasnovanom na matričnoj aritmetici dovela je do stvaranja osnovnih verzija programa za računanje u tehničkim naukama i disciplinama. Matlab, razvijen od strane kompanije MathWorks Inc. jeste jedan od najpoznatijih programa ovakve vrste u svetu. Jezgro Matlab-a izgrađeno je oko matričnog kalkulatora sa mogućnošću izvršavanja niza naredbi koje su grupisane u jedan programski skipt ili u funkciju. Mogućnost pisanja funkcija u Matlabu omogućila je izgradnju čitavog niza alata (Toolbox) koji danas zajedno s osnovnom jezgrom i korisničkim interfejsom čine Matlab. Upravo ova modularnost i otvorenost Matlab-a za definisanje novih alata postala je velika prednost Matlaba u odnosu na ostale slične programe, koji imaju zatvorenu strukturu i nadogradnja je moguća samo od strane proizvođača. Otvorenost Matlaba omogućila je da praktično svi njegovi korisnici postanu u neku ruku i razvojni tim samog Matlab-a. Tokom razvoja u Matlab-u su razvijeni alati za većinu delatnosti iz područja tehničkih nauka, a postoje i neki alati koji se primijenjuju izvan tih područja. Cilj ove skripte je prikaz osnovnih mogućnosti Matlab-a i primeri upotrebe tog programa za predmet Komunikacione i računarske mreže. Mogućnosti Matlab-a ovime nisu ni približno iscrpljene. Mogućnosti kao što su simuliranje dinamičkih sistema, obrada signala, rad sa simboličkim izrazima, generisanje upravljačkog koda za procesorske sisteme za rad u realnom vremenu i mnoge druge zahtijevaju detaljniji pristup svakom od pojedinih modula. 2. Pokretanje i organizacija Matlab-a Matlab je interaktivni matrični kalkulator interpreterskog tipa koji poseduje grafičko korisničko okruženje. Naziv MATLAB dolazi od engleskih riječi MATrix LABoratory, što označava njegove osnovne karakteristike, a to su rad s matričnim promenljivama i primena kod obrade mernih rezultata u laboratoriji Pokretanje Matlaba Matlab je moguće pokrenuti na 3 načina. To su: - Dvostrukim klikom miša na ikonu Matlaba na desktopu Windows-a, - Primenom Start menija - Upisom naredbe matlab u Run prozor unutar Start menija 1

2 Sl. 1. Znak programskog paketa Matlab. Nakon nestajanja Matlabova znaka pojavljuje se osnovni prozor Matlaba prikazan na slici 2. Sl. 2. Komandni prozor programskog paketa Matlab. Osnovni prozor Matlaba sadrži meni, alate (toolbar) i tri ili četiri prozora. U levom gornjem delu osnovnog prozora smešten je prozor koji omogućuje uvid u radni prostor Matlaba (Workspace), odnosno u tekući direktorijum. Prozor u levom donjem delu osnovnog prozora je Command history prozor, odnosno prozor koji sadrži listu svih upotrebljenih naredbi. U desnom donjem delu osnovnog prozora je komandni prozor. U njemu se upisuju naredbe Matlaba i dobivaju se numerički rezultati. U desnom gornjem delu nalazi se prozor Editor-a, tj. editor za m dokumente Matlab programe. Ukoliko Editor prozor nije otvoren, novi m dokument se pokreće opcijom menija File > New > M-file. Ukoliko je uključena opcija dock, prozor se nalazi unutar osnovnog prozora Matlab-a, a 2

3 ako je uključena opcija undock, Editor je otvoren u prozoru nezavisno od Matlab-a. Za prelaz iz jednog moda u drugi koriste se opcije Dock i Undock. Znak >> predstavlja prompt Matlaba. To je znak koji se pojavljuje kao poslednji u prozoru i označava da je Matlab spreman da prihvati naredbe od korisnika. Iza prompta nalazi se kursor. Iza prompta moguće je unositi naredbe Matlab-a, pokretati funkcije i izvršavati matematičke operacije. Naredba se izvršava nakon pritiska na taster Enter. Važno je napomenuti da Matlab razlikuje velika i mala slova kod upisa naredbi. Završetak rada s Matlab-om postiže se naredbom quit. Takođe, rad sa Matlabom se može završiti odabirom naredbe Exit iz menija File ili bilo kojim od standardnih načina zatvaranja prozora u Windows okruženju. Pomoć se u Matlabu dobija naredbama help i lookfor. Naredba help sama za sebe ispiše listu svih podcelina i toolbox-ova u kojima se dalje mogu naći tražene naredbe. Navođenjem naziva podceline iza naredbe help dobija se detaljnija lista mogućih naredbi. Za dobijanje sintakse i objašnjenja pojedine naredbe, potrebno je napisati: help <naredba> Gde je <naredba> naziv naredbe za koju tražimo sintaksu. Na primer, pomoć za naredbu za crtanje bi bila: help plot. Ukoliko nam nije poznat specifični naziv naredbe, za pomoć koristimo naredbu lookfor i to tako da iza te naredbe navedemo jednu ključnu reč koja označava akciju koju želimo da pokrenemo Organizacija Matlab-a i strukture podataka Celokupan rad u Matlab-u zasniva se na radu sa promenljivama (varijablama). Na definisane ulazne promenljive primenjuju se matematičke operacije i funkcije, a kao rezultat dobijaju se izlazne promenljive. Promenljive Matlaba smeštaju se u memorijski prostor (workspace). Primena matematičkih operacija odnosno funkcija na definisane promenljive čini da matematička ljuska uzima promenljive iz memorijskog prostora, izvodi zadatu operaciju ili funkciju i rezultat ponovno smešta u izlaznu promenljivu smeštenu u memorijski prostor. Workspace Matlab-a fizički je smešten u radnu memoriju računara, što znači da se prilikom izlaska iz programa, odnosno gašenja računara sve promenljive iz workspacea gube. Zbog tog svojstva programa potrebno je sve promenljive koje se žele sačuvati na disku pre izlaska iz programa. Isto tako, kod pokretanja programa moguće je promenljive spremljene kod pređašnjeg rada učitati sa diska u radni prostor Matlab-a (workspace). Grafičko okruženje Matlaba omogućuje grafički prikaz rezultata, ali isto tako i definisanje matematičkog modela, tj. simulacione šeme sistema pomoću grafičkih blokova unutar Simulinka. Kod grafičkog prikaza rezultata, funkcije za crtanje prikazuju sadržaj promenljivih sadržanih u radnom prostoru Matlaba, u grafičkom obliku. Tipovi podataka u Matlab-u prikazani su na slici 3. 3

4 array logical char numeric cell structure Java classes function handle int8,uint8 int16,uint16 int32,uint32 int64,uint64 single double user classes Sl. 3. Tipovi podataka u Matlabu Svi podaci su zasnovani na matricama. Sadržaj matrica može biti logički, char, numerički, cell i neki drugi specijalni tip podataka u zavisnosti od funkcija koje koriste te podatke. Korisnik može definisati i svoje tipove. Podaci su uvek pridruženi promenljivama. 3. Promenljive Promenljive (varijable) u Matlabu su matrice, različitog sadržaja i dimenzije. Zbog takvog načina prikaza, skalarne veličine se u Matlabu tretiraju kao matrice dimenzije 1x1, dok su vektori matrice vrsta ili kolona. Veličina (dimenzija) matrice ograničena je jedino raspoloživim memorijskim prostorom na računaru na kojem se Matlab izvršava. Promenljive Matlaba se mogu podeliti na više grupa, a njihova svojstva zavise od pripadnosti pojedinim grupama. Tako promenljive možemo podeliti na sledeće načine: 1. Prema sadržaju elemenata matrice na: - realne, - kompleksne, - simboličke, - polja cell-ova - strukture 2. Prema vidljivosti na: - lokalne, - globalne, 3. Prema izvoru nastanka na: - interne, - eksterne. Promenljive prema sadržaju spadaju u određenu grupu u zavisnosti kakve elemente sadrže. Ukoliko su elementi matrice realni i promenljiva se može nazvati realnom. Kompleksne promenljive sadrže kompleksne brojeve čiji je imaginarni deo različit od nule, dok simboličke promenljive sadrže simbole koji se ne interpretiraju numerički. Simboličke promenljive koriste se kao ulazne i izlazne promenljive kod simboličkog računa, kao što je simboličko rješavanje neodređenih integrala, algebarskih i diferencijalnih jednačina i slično. Globalne promenljive su one promenljive koje su vidljive iz više funkcija Matlaba. Promenljiva postaje globalna tako da se deklariše naredbom: >> global ime_promenljive 4

5 CommLab 00 Sve funkcije koje imaju napisanu definiciju će videti promenljivu ime_promenljive odnosno moći će pristupiti njenom sadržaju. Lokalne su promenljive sve one koje nisu globalne. Prema tome, ako postoji definisana promenljiva u funkciji Matlaba, nakon izvršenja funkcije u worksapce-u promenljiva neće postojati. Razlog za to je što se radi o lokalnoj promenljivoj i ona je vidljiva samo u funkciji gdje je definisana. Interne promenljive su promenljive koje definiše sam Matlab, dok eksterne promenljive predstavljaju promenljive definisane od strane korisnika ili promenljive koje su proizašle kao rezultat matematičkih operacija i funkcija u Matlabu Interne promenljive Interne promenljive služe za određivanje svojstva određenih matematičkih operacija. Interne promenljive nije preporučljivo koristiti u druge svrhe, jer se mogu dobiti nepredviđeni rezultati. Njih nije moguće izbrisati. Ukoliko se imenu initerne promenljive pridruži neka druga vrednost, originalna vrednost se restaurira brisanjem promenljive naredbom clear. Matlab sadrži sledeće interne promenljive: - eps = e tačnost realnih brojeva (razlika između 1.0 i prvog većeg), - realmin = e vrednost najmanjeg pozitivnog realnog broja, - realmax = e vrednost najvećeg pozitivnog realnog broja, - pi = vrednost broja, - inf = 1/0 - vrednost kod deljenja s nulom, - NaN = 0/0 - neodređena vrednost (not a number), - flops - broj floating point operacija, - i,j - imaginarne jedinice kompleksnih brojeva. Promenljiva flops sadrži broj floating point operacija i može se koristiti za merenje efikasnosti nekog algoritma. Na početku algoritma može se postaviti na nulu naredbom flops(0), a na kraju algoritma ona sadrži broj floating point operacija koje su izvedene nakon njenog postavljanja na nulu. Sadržaj internih promenljivih može se koristiti u funkcijama i operacijama u Matlab-u, što znači da one mogu biti sadržane u matematičkim izrazima Eksterne promenljive Eksterne promenljive su promenljive definisane od strane korisnika ili promenljive nastale kao rezultat matematičkih operacija i funkcija izvedenih u Matlabu. Ime promenljive sastoji se od jednog do najviše 19 alfanumeričkih znakova (slova engleske abecede, brojke i _ (underscore)), a počinje slovom. U imenu promenljive se razlikuju velika i mala slova. To znači da na primjer cev1 i Cev1 predstavljaju imena dve različite promenljive Definisanje promenljive Promenljiva se definiše i istovremeno joj se dodeljuje vrednost na sledeći način: a=2; Naredba je pridružila skalarnu vrednost 2 promenljivoj sa imenom a. Tačka-zarez na kraju naredbe označava da se rezultat ne ispisuje na ekranu. Na ovaj način promenljivoj se pridružuje skalar, vektror ili matrica. Razlika je u tome što kod vektora i matrice treba upisati i simbole za početak i kraj matrice odnosno vektora, a to su uglaste zagrade. Karakteristika matrica je da joj 5

6 elementi moraju biti istog tipa. To znači svi moraju biti ili numerički ili simbolički ili polja cellova odnosno strukture Vektori i matrice Pridruživanje vektora oblika promenljivoj b može se izvesti na sledeći način: b=[1;2;3;4+2*i;7] Kao rezultat dobija se: 1 2 b = i [ 7 ] b = i Otvorena uglasta zagrada znači početak definicije vektora ili matrice. Vrste unutar vektora odvajaju se znakom tačka-zarez, a kraj definicije vektora ili matrice je zatvorena uglasta zagrada. Na kraju naredbe nije stavljena tačka-zarez, što je prouzrokovalo ispis rezultata definicije vektora na ekranu. Za definisanje kompleksnog broja unutar vektora upotrebljena je interna promenljiva i koja predstavlja imaginarnu jedinicu. Isti se rezultat može postići ako se umesto znaka tačka-zarez za odvajanje redaka koristi tipka Enter. Matlab u tom slučaju ne daje komandni prompt sve dok se ne zatvori uglasta zagrada. Vektor oblika se može definisati i na sledeći način: d=[3 2 1] d = d = [3 2 1] Matrica se definiše na sličan način kao vektor, osim što uz znakove za odvajanje vrsta treba dodati i znakove za odvajanje kolona. Kolone se odvajaju praznim mestom (space) ili zarezom. Elementi matrice se unose po vrstama, počevši od prvog. Primer:» c=[3 2 1; 7 8 9; 4 5 6; 3 4 2] daje kao rezultat matricu: 6

7 c = Promenljive a, b i c definisane su na opisani način i memorisane su u Matlabovoj radnoj memoriji (workspace). Ispis imena svih eksternih promenljivih iz Matlabovog radnog prostora postiže se naredbama who ili whos. Naredba who daje popis imena bez opisa pojedinih promenljivih, dok naredba whos uz ime promenljive ispisuje veličinu, zauzeće u bajtovima i tip sadržaja promenljive. Primer: Nakon definisane promenljive a, b, i c na opisani način, naredbe who i whos daju sledeće rezultate:» who Your variables are: a b c» whos Name Size Bytes Class a 1x1 8 double array b 5x1 80 double array (complex) c 4x3 96 double array Grand total is 18 elements using 184 bytes Iz primera je vidljivo da je promenljiva a skalarna (dakle matrica dimenzije 1x1) i da zauzima 8 bajta, dok je njen sadržaj tipa double array. Promenljiva b je vektor dimenzije 5x1, a njegov sadržaj su kompleksni brojevi memorisani u elemente tipa double array. Zadnja linija izveštaja daje sumarne podatke o ukupnom broju elemenata i ukupnom zauzeću memorijskog prostora. Na ovaj način se dobija ispis promenljivih sa pripadajućim dimenzijama, međutim, ukoliko je potrebno dimenziju neke promenljive upisati u drugu varijablu (da bi se mogle definisati granice brojača kod obrade takve promenljive), to nije moguće učitiniti naredbom whos. Za to postoji naredba size. c_dim=size(c). Ovom naredbom je stvorena promenljiva c_dim koja ima dva elementa, od kojih prvi sadrži broj kolona, a drugi broj vrsta promenljive čije je ime upotrebljeno kao argument funkcije size. Za ispis bilo koje promenljive iz radnog prostora Matlab-a na ekran dovoljno je samo upisati njeno ime i pritisnuti taster Enter Definisanje niza brojeva Unos vektora i matrica, opisan u prethodnom poglavlju, prikladan je za upis matrica i vektora sa malim brojem elemenata. Međutim, upis elemenata vektora koji predstavljaju aritmetički niz od više hiljada elemenata, predstavljao bi ogroman posao. Da bi se olakšao unos takvih nizova, postoje naredbe koje to olakšavaju: d1=[var_min:korak:var_max] 7

8 Navedena naredba će promenljivoj d1 dodeliti niz brojeva čiji će početna vrednost biti var_min, konačna vrednost će biti var_max, a razlika između dva susedna elemenata niza iznosit će kao vrednost korak. Primer:» d1=[0:0.5:5] d1 = Columns 1 through Columns 8 through Naredbom u primeru kreiran je vektor vrsta od 11 elemenata (dimenzije 1x11) čija je najmanja vrednost 0, najveća 5, a prirast elemenata iznosi 0.5. Oblik naredbe d1=[var_min:var_max] stvara vektor vrste čiji su elementi aritmetički niz sa početnom vrednošću var_min, konačnom vrednošću var_max i razlikom između susednih elemenata niza koja je jednaka 1. Nizovi brojeva se još mogu stvoriti sa dve funkcije: d2=linspace(min,max,br_toc) d3=logspace(n1,n2,br_toc) Funkcija linspace kreira aritmetički niz čiji je prvi element jednak prvom argumentu funkcije (min), zadnji element je jednak drugom argumentu funkcije (max), a broj elemenata niza određen je trećim argumentom funkcije br_toc. Primer: d2=linspace(1,-1,5) d2 = Početna vrednost niza je 1, konačna -1 i niz mora sadržati 5 elemenata. Funkcija logspace kreira logaritamski niz koji sadrži broj elemenata određen trećim argumentom funkcije (br_toc), dok je početna vrednost niza određena iznosom 10 n1, gdje je n1 prvi argument funkcije, dok konačna vrednost niza odgovara 10 n2, gdje je n2 drugi argument funkcije. Elementi tako stvorenog vektora imaju logaritamsku raspodelu. Primer:» d3=logspace(-1,2,7) d3 = Polje d3 iz prethodnog primera ima početnu vrednost 0.1 (što odgovara 10-1 ), konačnu vrednost 100 (što odgovara 10 2 ), a sadrži 7 elemenata raspoređenih logaritamski. 8

9 Ekstrakcija dela matrice Postoje slučajevi primene operatora i funkcija Matlaba, kad je potrebno delovati samo na deo matrice ili vektora, to znači samo na neku submatricu unutar postojeće matrice. U tom slučaju se adresira promenljiva uz naznačavanje početne i konačne vrste, odnosno početne i konačne kolone na koji se naredba odnosi. Sintaksa naredbe je sledeća: ime_var(n1:n2,m1:m2), gdje je ime_var promenljiva koja sadrži matricu dimenzije n x m. n1 i n2 su brojevi početne i konačne kolone submatrice i moraju biti u intervalu 1 n1 n2 n, dok m1 i m2 predstavljaju brojeve početne i konačne kolone submatrice i moraju se nalaziti u intervalu 1 m1 m2 m. Za adresiranje jedne vrste dovoljno je iza zareza umesto intervala navesti samo broj vsrte koji se želi, dok se adresiranje svih vrsta matrice postiže kada se iza zareza unosi znak dvotočke umesto intervala. Primer: >> c = [3 2 1; 7 8 9; 4 5 6; 3 4 2] c = >> c (1:3,2:3) ans = >> c (:,2) ans = >> c(3,:) ans = >> c(:,1:2) ans =

10 Polja cell-ova Polja cell-ova definišu se slično kao i matrice samo što su znakovi za početak i kraj polja vitičaste zagrade umjesto uglastih. Karakteristika cell-ova je da mogu sadržati različite tipove podataka. Tako se u jednom cell-u mogu naći numerički podaci, podaci tipa char, pa čak i matrice različitih dimenzija. Polje se definiše na sledeći način: >> xx={1 2 3 'pera';7 'eustahije' 4 5} xx = [1] [ 2] [3] 'pera' [7] 'eustahije' [4] [ 5] U navedenom primeru, polje xx sadrži numeričke podatke kao i polja karaktera. Adresiranje pojedinog elementa polja izvodi se na isti način kao kod matrice, samo što se koriste vitičaste umesto uglastih zagrada. Npr. podatak pero nalazi se u prvoj vrsti i četvrtoj koloni polja xx. Do tog se podatka može doći naredbom: xx{1,4} Nakon adresiranja nekog člana polja, moguće mu je pridružiti novu vrednost. 4. Operacije u Matlabu Matlab je interaktivni program interpreterskog tipa, što znači da naredbe upisane iza komandnog prompta izvršava neposredno. Isto tako, m funkcije koje su snimljene na disk mogu da se izvršavaju bez prethodnog kompajliranja. Operacije Matlab-a mogu da se podele na nekoliko grupa: 1. Aritmetički operatori, 2. Relacioni operatori, 3. Logički operatori, 4. Naredbe odluke i ponavljanja, 5. Funkcije, 6. Simulink. Rezultat operacija se memoriše u naznačenu promenljivu. Ako se ne naznači promenljiva za memorisanje rezultata, Matlab stvara promenljivu pod nazivom ans (dolazi od engleske reči answer) i u nju smešta rezultat. Među navedenim grupama operacija, simulink po načinu rada pripada u grupu funkcija, međutim zbog značaja kod simulacija u području automatike, izdvojen je kao posebna celina Aritmetički operatori Aritmetički operatori omogućuju aritmetičke operacije nad skalarnim odnosno matričnim promenljivama. Popis operatora prema prioritetu izvođenja dat je u tabeli. Prioritet operator Opis primer 1. ( ) zagrade grupišu izraz i daju najveći prioritet a*(b+c) 2. konjugacija i transponovanje matrice (vektora) a. transponovanje matrice (vektora) a. 3. ^ Stepenovanje a^3.^ stepenovanje među elementima matrice a.^b 4. * množenje skalara ili matrica a*b 10

11 CommLab 00.* množenje među elementima matrice a.*b / desno deljenje matrica (X/Y=X*Y-1) b/a \ levo deljenje matrica (X\Y=Y-1*X) b\a./ deljenje među elementima matrice b./a 5. + Sabiranje a+b - Oduzimanje a-b Prema tabeli, najviši prioritet (br. 1.) imaju zagrade, a najniži sabiranje. Operacije unutar izraza se izvršavaju počevši od najvišeg prioriteta prema najnižem, a izrazi istog prioriteta izvršavaju se od leva prema desno. Primer: 11+a(x+y)^3*2 redosled operacija: 1. rez=x+y 2. rez=rez^3 3. rez=a*rez 4. rez=rez*2 5. rez=11+rez Stepenovanje matrice moguće je izvesti samo kod kvadratnih matrica, dok potenciranje među elementima matrica postavlja potrebu da matrice budu istih dimenzija, ali ne moraju nužno biti kvadratne. Množenje matrica vrši se po zakonima množenja matrica, što znači da matrice moraju imati odgovarajuće dimenzije. Deljenje matrica odgovara množenju inverznom matricom (odnosno pseudo inverznom matricom kod nekvadratnih matrica). Desno deljenje matrica: x=b/a daje rešenje jednačine x*a=b, dok levo deljenje x=a\b daje ješenje jednačine A*x=b. Ukoliko je kod množenja jedan od operanada skalar, tad ne postoje ograničenja na dimenzije matrice, a kao rezultat se dobije matrica čiji je svaki element pomnožen navedenim skalarom. Množenje, deljenje i potenciranje među elementima matrica zahteva da matrice budu istih dimenzija, osim ukoliko je jedan od operanada skalar. Element rešenja kod množenja među elementima matrica dobije se kao c(i,j)=a(i,j)*b(i,j) i=1,...m, j=1,...n, kod matrica dimenzije m x n. Za uspešno sabiranje i oduzimanje matrica, matrice moraju biti istih dimenzija ili jedan od operanada mora biti skalar. U slučaju sabiranja skalara i matrice rezultat je matrica čiji svaki element odgovara sumi elementa početne matrice i skalara Relacioni operatori Relacioni operatori su operatori odnosa među dvema promenljivama, a kao rezultat daju logičku promenljivu. Logička promenljiva je realna promenljiva koja ima dve moguće vrednosti i to: nulu ako operator nije zadovoljen i jedinicu ako operator jeste zadovoljen. Ovakav način definisanja 11

12 logičke promenljive omogućuje da se rezultat relacionih operatora direktno koristi kako u logičkim tako i u aritmetičkim izrazima. Relacioni operatori mogu se primenjivati među matricama i među skalarima, odnosno između matrice i skalara. Kod primene relacionih operatora između dve matrice, matrice moraju biti istih dimenzija, operator se primenjuje među odgovarajućim elementima matrice, a rezultat je matrica istih dimenzija kao matrice između kojih je operator primenjen. Operator između matrice i skalara daje kao rezultat matricu dimenzija jednakih ulaznoj matrici, a dobija se primenom operatora između skalara i svakog elementa matrice. Matlab podržava sledeće operatore: operator Opis primer < Manje a<b <= manje i jednako a<=b > Veće a>b >= veće i jednako a>=b == Jednako c==2 ~= Različito a~=c Primer: a = [ ], b = [ ]» a<=b» a<=3» a~=b ans = ans = ans = Logički operatori Logički operatori primenjuju se između logičkih promenljivih i kao rezultat daju logičku promenljivu. Logički se operatori mogu primeniti i između realnih promenljivih, ali se tada realne promenljive interno pretvaraju u logičke pre samih operacija i to tako da realna 0 prelazi u logičku 0 (.false.), a svi ostali realni brojevi prelaze u logičku jedinicu. Ukoliko su promenljive među kojima se primenjuju logički operatori matrice ili kombinacije matrica i skalara, vrede ista pravila kao i kod relacionih operatora. To znači da matrice moraju biti istih dimenzija, rezultantna matrica je rezultat operacija među elementima matrica, kod operacija između skalara i matrica elementi rezultantne matrice su rezultat operacija između skalara i odgovarajućeg elementa matrice. Logički operatori raspoloživi u Matlab-u prikazani su u tabeli: operator Opis primer & logičko I a&b logičko ILI a b ~ logički komplement (ne) ~a xor logičko ekskluzivno ILI xor(a,b) Logički operatori su istog prioriteta, ali im je prioritet viši od relacionih operatora. Kod izraza logičkih operatora, odnosno mešanih izraza logičkih, relacionih i aritmetičkih operatora dozvoljeno je koristiti zagrade za tačno određivanje prioriteta izvođenja. Primer (za matrice a i b iz prethodnog primera) 12

13 » a<=2&b==3» ~(b>=3)» a&b ans = ans = ans = CommLab 00 S obzirom na to da su a i b realne matrice sa svim elementima različitim od nule, rezultat & operatora između njih je matrica čiji su svi elementi jedinice Naredbe odluke i ponavljanja Aritmetički, logički i relacioni operatori omogućavaju uspešno zadavanje pojedinačnih naredbi na komandnom promptu. Međutim, za programiranje su, osim navedenih naredbi potrebne i naredbe odluke i ponavljanja koje omogućuju stvaranje višestruko izvršavajućih petlji i grananje unutar toka izvođenja programa. Naredbe za ponavljanje moguće je koristiti i na komandnom promptu i u m-funkcijama, dok upotreba naredbi odluke ima smisla samo u funkcijama. Korištenje naredbe ponavljanja na komandnom promptu utiče na to da matlab ne daje novi prompt sve do završetka petlje za ponavljanje. Naredbe odluke imaju sledeći oblik: if logički_izraz naredbe; elseif logički_izraz naredbe; else naredbe; end Naredbe odluke uvek počinju naredbom if, a završavaju naredbom end. Naredbe elseif i else ne moraju nužno postojati u naredbama odluke. Naredbe if, elseif, else i end predstavljaju ključne reči naredbi odluke i dele blokove naredbi koji se vrše u pojedinom slučaju. Logički izraz je skalarni izraz logičkih i relacionih operatora ili logička skalarna promenljiva. Ukoliko je logički izraz iza naredbe if istinit, u tom slučaju se izvode naredbe koje slede u redovima između naredbi if i elseif i nakon toga se preskaču sve naredbe do naredbe end. Ako izraz nije istinit, ispituje se izraz iza elseif naredbe (ako ona postoji). Istinitost tog logičkog izraza omogućuje izvođenje bloka naredbi između elseif i sledeće ključne naredbe bloka odluke i odlazak na naredbu end. Nezadovoljenje niti jednog logičkog uslova unutar naredbi odluke utiče na izvršavanje naredbi iza naredbe else i odlazak na naredbu end. Primeri: if a>=b & a<c if a>=b & a<c if a>=b & a<c if a>=b & a<c a=0; a=0; a=0; a=0; end elseif a>c elseif a>c elseif a>c a=c^2; a=c^2 a=c^2; end else elseif a<=b a=c*2; a+c/2; end else a=3; end Naredbe za ponavljanje imaju obllik: for promenljiva=izraz, naredbe; 13

14 end Kod for petlje naredbe između for i end naredbi izvode se za svaku vrednost promenljive koja je definisana izrazom. Obično se izrazom definiše početna i konačna vrednost na način kako se definišu nizovi brojeva u vektorima, no moguće je specificirati i inkrement. Moguće je definisati više petlji unutar jedne petlje. Dve petlje ponavljanja, jedna unutar druge, prikazane su primerom: for i=1:10, for j=1:2:14, a(i,j)=10*i+j; end end U ovom primeru spoljna petlja kontrolisana je promenljivom i koja će primati vrednosti 1, 2,... 10, dok je unutrašnja petlja kontrolirana promenljivom j koja prima vrednosti 1, 3, 5, Za jednu vrednost promenljive spoljašnje petlje izvrše se sva ponavljanja unutrašnje petlje, pa se onda prelazi na novu vrednost promenljive spoljašnje petlje. (U ovom primeru su kao brojači iskorišćene promenljive s istim imenima kao interne promenljive). for i=1:10, for j=1:2:14, a(i,j)=10*i+j; end end Drugi način ostvarenja petlje ponavljanja ostvaruje se upotrebom naredbe while. Sintaksa naredbe je sledeća: while promenljiva, naredbe; end Petlja se izvršava sve dok je vrednost promenljive različita od nule, tj. logička jedinica. 5. Grafičke funkcije Matlab-a Matlab omogućuje grafički prikaz rezultata, a osim toga poseduje i niz funkcija za opis slike, osa i krivih. Matlabom je moguće crtati dvodimenzionalne i trodimenzionalne grafičke prikaze Dvodimenzionalni grafički prikaz Za crtanje dvodimenzionalnih grafičkih prikaza koriste se naredbe plot, bar, stairs i stem. Naredba plot spaja susedne tačke grafičkog prikaza ravnom linijom. Bar daje stubasti prikaz, dok se kod stairs naredbe dobija stepenasti prikaz. Stem naredba svaki podatak prikazuje vertikalnom linijom čija dužina odgovara vrednosti podatka, a na vrhu linije se nalazi kružić. Sintaksa i opcije ovih naredbi je ista pa će biti prikazana samo za naredbu plot. Sintaksa naredbe je: plot(x,y, opcije ). Ukoliko se vektor x i string opcija izostave, tada se prikazuju tačke vektora y u zavisnosti od njihovog rednog broja. Ako su prisutni i vektor x i vektor y, tada vektori čine niz uređenih parova 14

15 tačaka. Vektori x i y moraju imati isti broj vrsta. Ako je y matrica umesto vektora, koja ima isti broj vrsta kao vektor x, naredba plot crta po jednu krivu za svaku kolonu vektora y. Opcijama se određuje boja i tip linije, prema slijedećoj tabeli: oznaka boja oznaka tip linije y žuta - puna linija m ljubičasta : tačkasta linija c svetlo plava -. tačka crta r crvena -- isprekidana g zelena b plava w bela k crna Ostale opcije moguće je naći primenom funkcije help plot. Naredba plot otvara novi grafički prozor i u njemu crta sliku. Ako je grafički prozor već postojao, slika se crta u njemu. Primer: >> t=-2*pi:0.1:2*pi; >> x=sin(t); >> plot(t,x); Crtanje na logaritamskoj umesto na linearnoj skali postiže se primenom funkcija semilogx,semilogy ili loglog umesto funkcije plot, uz istu sintaksu. Funkcija semilogx daje logaritamsku osu apscise i linearnu ordinatu, funkcija semilogy daje prikaz na logaritamskoj ordinati i linearnoj apscisi, dok funkcija loglog daje logaritamski prikaz na obe ose Funkcije za uljepšavanje slike Da bi grafički prikaz bio funkcionalniji za korisnika, u Matlabu postoje funkcije za ulepšavanje i kontrolu grafičkog prikaza. Naredbe su prikazane u tabeli: Naredba Funkcija clf brisanje slike iz aktivnog grafičkog prozora grid crtanje koordinatne mreže na slici 15

16 zoom hold omogućavanje povećavanja dela grafikona pomoću miša zadržavanje tekuće slike u aktivnom grafičkom prozoru. Tako se omogućuje da novi plot ne briše postojeći crtež nego da budu vidljiva oba crteža. Sve naredbe iz tabele odnose se na aktivni grafički prozor. Naredbe grid, zoom i hold kod prvog poziva postavljaju svojstvo koje kontrolišu, a kod drugog poziva ga poništavaju. Dodavanjem opcije on (grid on) iza naredbe, svojstvo se uvijek postavlja, a dodavanjem naredbe off svojstvo se uvijek uklanja. Otvaranje novog grafičkog prozora postiže se naredbom figure, dok naredba figure (broj) aktivira grafički prozor čiji je broj upotrebljen kao argument. Crtanje više koordinatnih sustava unutar istog grafičkog prozora postiže se naredbom subplot. Sintaksa naredbe subplot: subplot(n,m,i), plot(...). Argumenti n i m određuju broj vrsta i broj kolona u koje će grafikoni biti poređani, dok broj i određuje broj aktivnog elementa u koji naredba plot crta. Primer: >> t=-2*pi:0.1:2*pi; >> x=sin(t); >> y=cos(t); >> subplot(2,1,1); >> plot(t,x); >> subplot(2,1,2); >> plot(t,y,'r'); Prva naredba subplot određuje da će grafikoni biti poređani u 2 vrste i jednu kolonu, i da je aktivan prvi od njih. U taj se grafikon crta kriva određena vektorima t i x. Druga subplot naredba određuje da je aktivan drugi grafikon (grafikon u drugoj vrsti) i u njega se crta kriva određena vektorima t i y Funkcije za označavanje slike / grafikona Grafičkim prikazima u Matlab-u moguće je dodati naslov, oznake osa, tekst unutar grafičkog prikaza i legendu. Za to postoje sledeće naredbe: title ( string ) - ispisuje specificirani tekst na mesto naslova, xlabel( string ) - ispisuje specificirani tekst na mesto oznake x ose, ylabel( string ) - ispisuje specificirani tekst na mesto oznake y ose, 16

17 zlabel( string ) - ispisuje specificirani tekst na mesto oznake z ose, kod 3D grafičkog prikaza gtext( string ) - omogućuje upis teksta na mesto koje se određuje mišem legend( str1', str2', str3')- upisuje se legenda na aktivni grafički prikaz i to tako da se uz tip linije prve krive ispisuje string str1, uz tip 2. krive string str2, itd Trodimenzionalni grafički prikaz Za trodimenzionalni prikaz potrebno je definisati dva vektora dimenzija nx1 i mx1 i jednu matricu dimenzija nxm. Na taj se način dobije skup tačaka određenih uređenim trojkama, koje čine ravan. Crtanje trodimenzionalnih grafičkih prikaza izvodi se naredbom mesh. Sintaksa naredbe je: mesh(x,y,z) Rezultat prikaza je površina u trodimenzionalnom koordinatnom sistemu, koja je za svaku kombinaciju tačaka iz x-y ravni određenih vektorima x i y definisana vrednošću na z osi određenom matricom z. 6. Funkcije Funkcije uz operatore predstavljaju bitan deo Matlab-a, a njihovo mnoštvo razvrstano po različitim toolbox-ovima upravo čini Matlab upotrebljivim i moćnim alatom. Funkcije se prema svom poreklu mogu svrstati u 3 kategorije: - interne funkcije, - funkcije u toolbox-ima, - funkcije definisane od strane korisnika. Poreklo funkcije može se odrediti naredbom which iza koje se upiše ime funkcije. Ako je funkcija interna, Matlab to i prikaže, dok za funkcije iz toolbox-ova i definisane od strane korisnika Matlab prikaže lokaciju na disku gde je smeštena. Za upotrebu funkcija njihovo poreklo nije bitno, jer se sve pozivaju na sličan način: ime_funkcije(arg1,arg2,...argn) U zavisnosti od funkcije, u zagradi se navodi jedan ili više argumenata, od kojih svaki mora biti ili konstanta ili promenljiva definisana u workspace-u. Na taj način se mogu pozvati sve funkcije koje spadaju u grupu internih funkcija Matlab-a ili se čuvaju na disku računara u direktorijumu koji je naveden u Matlabovom putu pretraživanja ili su smeštene u tekućem direktorijumu. Definisani put pretraživanja može se dobiti naredbom path. Ukoliko se želi dodati novi direktorijum u put pretraživanja, potrebno je izvršiti sledeće naredbe Matlab-a: p=path; path(p, novi_put ); Prva naredba postojeći put pretraživanja dodeljuje promenljivoj p. Druga naredba definiše novi put pretraživanja tako da starom putu iz promenljive p doda novi put pretraživanja definisan stringom novi_put. Definisani put pretraživanja ostaje aktivan do izlaska iz Matlab-a. Ukoliko se taj put želi trajno sačuvati, potrebno je navedene naredbe dodati u startup.m proceduru u direktoriju gdje je instaliran Matlab. 17

18 Broj i vrsta raspoloživih funkcija u Matlabu zavisi od broja instaliranih toolbox-ova. Standardni toolbox-ovi sadrže velik broj funkcija među kojima možemo izdvojiti samo neke kao što su: elementarne matematičke funkcije, funkcije za obradu vektora i matrica, funkcije za obradu stringova i funkcije za rad sa polinomima. U ovoj skripti će biti spomenute samo osnovne funkcije Elementarne matematičke funkcije Elementarne matematičke funkcije definisane su na području kompleksnih brojeva, a rezultate daju takođe u skupu kompleksnih brojeva. Argumenti mogu biti tipa skalara, vektora i matrica, a rezultat je promenljiva istog tipa i dimenzija kao i ulazni argument. Prema tome, primena funkcije na matricu, kao rezultat će dati matricu istih dimenzija kao što je matrica argumenta čiji su elementi rezultat primene funkcije na pojedini element matrice argumenta Trigonometrijske i ciklometrijske funkcije Domen i kodomen funkcije je skup kompleksnih brojeva. Sintaksa i opis funkcija dati su tabelom: funkcija Sintaksa Opis sin y=sin(x) sinus funkcija ugla u radijanima cos y=cos(x) cosinus funkcija ugla u radijanima tan y=tan(x) tangens funkcija ugla u radijanima asin y=asin(x) arcus sinus funkcija (uz realni argument u području -1 do 1 rezultat je u području - /2 do /2) acos y=acos(x) arcus cosinus funkcija (uz realni argument u području -1 do 1 rezultat je u području - do 0) atan y=atan(x) arcus tangens funkcija (uz realni argument u području -4 do 4 rezultat je u području - /2 do /2) atan2 phi=atan2(y,x) arcus tangens definisan u 4 kvadranta Logaritamske i hiperbolične funkcije Logaritamske i hiperbolične funkcije, zajedno sa sintaksom i opisom date su u tabeli: Funkcija Sintaksa Opis Exp y=exp(x) eksponencijalna funkcija y = e x Log y=log(x) funkcija prirodnog logaritma y=ln(x) log2 y=log2(x) funkcija logaritma sa osnovom 2 y=log 2 (x) log10 y=log10(x) funkcija logaritma sa osnovom 10 y=log 10 (x) Sinh y= sinh(x) funkcija sinus hiperbolni Cosh y=cosh(x) funkcija cosinus hiperbolni Tanh y=tanh(x) funkcija tangens hiperbolni asinh y=asinh(x) inverzna funkcija sinus hiperbolni acosh y=acosh(x) inverzna funkcija cosinus hiperbolni atanh y=atanh(x) inverzna funkcija tangens hiperbolni Ostale funkcije Među ostalim elementarnim funkcijama mogu se navesti funkcije zaokruživanja, apsolutne vrednosti, kao i funkcije za određivanje realnog odnosno imaginarnog dela kompleksnog broja. 18

19 Opis i sintaksa funkcija prikazani su u tabeli: funkcija Sintaksa Opis abs y=abs(x) apsolutna vrednost argumenta x sign y=sign(x) signum funkcija round y=round(x) zaokruživanje prema najbližem celom broju fix y= fix(x) zaokruživanje prema najbližem celom broju prema nuli (odbacuju se decimalna mjesta iza decimalne tačke broja) ceil y=ceil(x) zaokruživanje prema najbližem celom broju u smjeru + floor y=floor(x) zaokruživanje prema najbližem celom broju u smjeru - angle y=angle(x) ugao kompleksne promenljive u radijanima real y=real(x) realni deo kompleksne promenljive imag y=imag(x) imaginarni deo kompleksne promenjive conj y=conj(x) konjugovano kompleksna vrednost argumenta rem y=rem(x,y) daje ostatak celobrojnog deljenja promenljivih x i y sqrt y=sqrt(x) kvadratni koren argumenta 6.2. Funkcije za obradu vektora i matrica Grupu funkcija za obradu ve ktora i matrica predstavljaju funkcije čiji su argumenti vektori ili matrice, a kao rezultat daju logičku promenljivu, ili vektor ili matricu različitih dimenzija od ulazne matrice, odnosno matricu indeksa elemenata argumenta koji zadovoljavaju dati kriterijum. To su funkcije za kreiranje matrica, relacione i logičke funkcije nad matricama, te funkcije za određivanje različitih veličina karakterističnih za matrice i vektore Funkcije za definisanje matrica Funkcije za definisanje matrica omogućuju definisanje matrice dimenzije mxn sa svojstvima određenim funkcijom. Za sve funkcije ove grupe važi da mogu imati jedan ili dva skalarna argumenta tipa integer. Ukoliko se radi o funkciji sa jednim argumentom, on određuje dimenziju izlazne kvadratne matrice. Ako su funkcije pozvane sa 2 argumenta, oni određuju broj vrsta i kolona izlazne matrice. Funkcije za definisanje matrica su prikazane tabelom: funkcija sintaksa rezultat funkcije zeros y=zeros(m) Matrica čiji su svi elementi jednaki nuli y=zeros(m,n) ones y=ones(m) Matrica čiji su svi elementi jednaki jedinici y=ones(m,n) eye y=eye(m) Jedinična matrica (elementi glavne dijagonale jednaki 1, a ostali y=eye(m,n) elementi jednaki nuli) rand y=rand(m) Matrica slučajnih elemenata u intervalu [-1, 1] y=rand(m,n) randn y=rand(m) Matrica slučajnih elemenata generisanih prema normalnoj y=rand(m,n) raspodeli Relacione i logičke funkcije Relacione i logičke funkcije za rad sa matricama ispituju sadržaj matrica koje su date kao ulazni argumenti funkcije i vraćaju logičku varijablu ili matricu logičkih promenljivih koji imaju vrednost 1 ako je uslov ispunjen, odnosno nulu ako nije. Funkcija Sintaksa Opis funkcije any y=any(x) Za vektor (kolonu) vraća jedinicu ako je barem jedan element 19

20 različit od nule. Primenjena na matricu, ova funkcija daje rezultat za svaku kolonu matrice posebno pa je ukupni rezultat vektor vrsta. all y=all(x) Za vektor (kolonu) vraća jedinicu ako su svi elementi različiti od nule. Primenjena na matricu, ova funkcija daje rezultat za svaku kolonu matrice posebno pa je ukupni rezultat vektor vrsta. find y=find(log_iz) Funkcija vraća vektor indeksa kod kojih je logički izraz (log_iz) zadovoljen. Npr. y=find(x>0), daje indekse elemenata vektora x koji su veći od nule. Primenjena na matricu, ova funkcija vraća dva indeksa za svaki element pa je sintaksa: isnan isinf finite y=isnan(x) y=isinf(x) y=finite(x) [m,n]=find(z>0). Sve tri funkcije daju izlaznu matricu istih dimenzija kao što je matrica argumenta (size(y)=size(x)). Funkcije daju jedinicu na mestima elemenata ulazne matrice koji zadovoljavaju ispitivano svojstvo matrice, a nulu na ostalim mjestima. isnan ===> da li je element ulazne matrice jednak NaN isinf ===> da li je element ulazne matrice jednak Inf finite ===> da li je element ulazne matrice konačan isempty y=isempty(x) Funkcija vraća skalarnu vrijednost 1 ako je matrica (vektor) prazan (ima veličinu 0) exist m=exist( ime ) Traži da li postoji entitet sa navedenim imenom i vraća: 0 - ako ne postoji 1 postoji promenliva u radnom prostoru 2 - postoji m-funkcija u Matlab-ovom putu traženja 3 - postoji MEX-funkcija u Matlab-ovom putu traženja 4 - postoji MDL datoteka u putu traženja 5 - interna funkcija matlab-a 6 - P funkcija 7 - direktorijum Funkcije za obradu vektora Funkcije za analizu vektora mogu imati kao argument vektor ili matricu. Ako je argument vektor, rezultat je skalarna veličina proizašla kao obrada vektora. Ako je argument matrica, rezultat je vektor vrsta čiji svaki element predstavlja rezultat operacije nad odgovarajućom kolonom matrice. Sintaksa i opis funkcija dati su tablicom: funkcija sintaksa rezultat funkcije min y=min(x) minimum vektora x max y=max(x) maksimum vektora x mean y=mean(x) srednja vrijednost vektora x median y=median(x) median vektora x std y=std(x) standardna devijacija cov y=cov(x) kovarijansa vektora 20

21 sum y=sum(x) suma elemenata vektora cumsum y=cumsum(x) kumulativna suma elemenata vektora (dimenzija jednaka ulaznom vektoru) diff y=diff(x) vektor razlike susednih elemenata ulaznog vektora y(i)=x(i+1)-x(i) prod y=prod(x) produkt elemenata vektora cumprod y=cumprod(x) kumulativni produkt elemenata vektora (dimenzija jednaka ulaznom vektoru) sort y=sort vraća vektor istih dimenzija kao ulazni vektor, kojem su elementi sortirani po rastućem redu. Kod ulaznog argumenta tipa matrice rezultat je matrica kojoj su kolone sortirane po rastućem redu Funkcije za obradu matrica Funkcije za obradu matrica kao argument imaju matricu, a kao rezultat daju matricu ili vektor. Sintaksa i opis funkcija prikazan je u tabeli: funkcija sintaksa rezultat funkcije trace y=trace(x) trag matrice (suma elemenata glavne dijagonale) rank y=rank(x) rang matrice det y=det(x) determinanta matrice eig y=eig(x) vektor karakterističnih vrednosti kvadratne matrice poly y=poly(x) karakteristični polinom kvadratne matrice diag y=diag(x) vektor koji sadrži elemente glavne dijagonale matrice inv y=inv(x) inverzna matrica kvadratne matrice rot90 y=rot90(x) rotacija matrice za 90 u smeru obrnutom od kazaljke na satu fliplr y=fliplr(x) zamena kolona matrice flipud y=flipud(x) zamena vrsta matrice triu y=triu(x) gornja trokutasta matrica matrice x tril y=tril(x) donja trokutasta matrica matrice x 6.3. Funkcije za obradu stringova String je niz ASCII karaktera pridružen promenljivoj. U Matlab-u string se definiše jednostrukim navodnicima na početku i kraju željenog niza znakova. Primer: s= Ovo je poruka U ovom primeru promenljivoj s je dodeljen niz znakova. Matlab sadrži veliki broj funkcija za rad sa stringovima, a njihov je popis moguće dobiti upisom naredbe lookfor string. Za svaku pojedinu funkciju detaljno objašnjenje i sintaksa dobijaju se upisom naredbe help i imena pojedine funkcije. Ovde je dan pregled samo nekoliko naredbi za rad sa stringovima. Sintaksa i opis funkcija dati su u tabeli: funkcija sintaksa rezultat funkcije blanks s=blanks(n) string od n praznih mesta (ulazni argument integer) findstr x=findstr(s1,s2) funkcija traži string s2 u stringu s1 i vraća indekse svih početaka stringa s2 u s1. 21

22 isstr x=isstr(s1) vraća logičku jedinicu ako je s1 string. Inače vraća nulu. lower s=lower(s1) sva slova stringa s1 pretvara u mala slova i sprema u string s. upper s=upper(s1) sva slova stringa s1 pretvara u velika slova i sprema u string s. strcat s=strcat(s1,s2,s3) spaja sve stringove navedene kao argumente u jedan string. num2str s=num2str(x) pretvara numeričku promenljivu x u string Funkcije za rad s polinomima Polinomi se u Matlab-u prikazuju kao vektori vrste kod kojih prvi element predstavlja koeficijent uz najvišu potenciju vektora, dok posljednji koeficijent predstavlja koeficijent uz nultu potenciju vektora. Primer: Polinom: x 4 +3x 2 +2x u Matlabu se opisuje vektorom: [ ]. Prema tome, broj elemenata vektora mora biti za jedan veći od reda polinoma. Sintaksa i opis funkcija za rad s polinomima dati su u tabeli: funkcija sintaksa rezultat funkcije roots y=roots(x) vektor koji sadrži korene polinoma x poly x=poly(y) inverzna funkcija funkciji roots. Iz vektora korena polinoma stvara polinom. conv x=conv(m,n) Rezultat je polinom nastao množenjem polinoma m i n deconv [q,r] = deconv(b,a) Rezultat su dva polinoma nastala deljenjem polinoma b sa polinomom a. Polinom q je rezultat deljenja, a polinom r je polinom ostatka. polyder y=polyder(x) Polinom nastao derivacijom polinoma x. polyfit p=polyfit(x,y,n) Računa polinom p(x) n-tog reda za skup ulaznih tačaka određenih vektorima x i y metodom najmanjih kvadrata. (Elementi x(i) i y(i) formiraju uređene parove tačaka krive koja se aproksimira polinomom) M funkcije M funkcije su funkcije definisane od strane korisnika, a predviđene za izvršavanje pomoću Matlab-a. Funkcije se sastoje od standardnog zaglavlja iza kojeg slede naredbe Matlab-a. Funkcije se zapisuju kao ASCII datoteke na disk, a njihovo ime obavezno mora imati ekstenziju m. Ime funkcije treba da odgovara imenu datoteke bez ekstenzije, u koju se funkcija skladišti. Prema tome, dužina imena, kao i razlikovanje velikih i malih slova zavisi od operativnog sistema na kojem se Matlab izvršava. Da bi se izbegla kolizija sa postojećim funkcijama Matlaba, korisničkim je funkcijama potrebno davati različita imena od imena internih funkcija i funkcija u 22

23 Toolbox-ovima. Da bi se funkcija mogla izvšavati, mora biti smeštena u tekući direktorijum ili u direktorijum koji je u putu pretraživanja Matlab-a. Funkcija mora imati sledeći oblik: function izl_var=ime_funkcije(ul_var_1,ul_var_2,... ul_var_n) %komentar koji se ispisuje u helpu operatori i druge funkcije izl_var=... Zaglavlje funkcije počinje propisanom rečju function iza koje sledi ime izlazne promenljive ili niza promenljivih koje funkcija vraća kao rezultat. Ako vraća više promenljivih, tada se umjesto imena jedne 7. Upotreba naredbe fprintf Naredba fprintf omogućava kontrolu ispisa numeričkih i tekstualnih podataka i njihov ispis na ekranu ili upis u dokument. Sintaksa naredbe je zasnovana na fprintf funkciji jezika C: fprintf(format) fprintf(format,variables) fprintf(fid,format,variables) gde format predstavlja tekstualni string koji kontroliše pojavu izlaza, variables su lista promenljivih razdvojene zarezom koje se prikazuju u skladu sa specifikacijom u format delu. Vrednost fid se postavlja samo u slučaju kada se izlaz šalje u datoteku. kod objašnjenje %s formatira prikaz kao string %d formatira prikaz broja bez decimala (integer format) %f formatira prikaz broja tipa float ili double bez eksponenta %e formatira prikaz broja tipa float ili double sa eksponentom %g formatira prikaz broja u zavisnosti od samog broja kao %f ili %e \n unosi novi red u izlazni string \t unosi tab u izlazni string Primer 1: >> I = 4/12; >> fprintf('informacioni sadrzaj svakog karaktera je %.3g (bits)\n',i); Informacioni sadrzaj svakog karaktera je (bits) Primer 2: >> I = 4/12; >> fprintf('informacioni sadrzaj svakog karaktera je %g (bits)\n',i); Informacioni sadrzaj svakog karaktera je (bits) Primer 3: 23

24 >> I = 4/12; >> fprintf('informacioni sadrzaj svakog karaktera je %e (bits)\n',i); Informacioni sadrzaj svakog karaktera je e-001 (bits) Kod eksponencijalnog zapisa slovo e označava brojku 10, a broj iza nje eksponent broja 10: e-1 = Upotreba naredbe clear Naredba clear briše sve promenljive i funkcije iz memorije. Koristi se na više načina: clear clear variables clear global clear functions clear all briše sve promenljive iz workspace-a radi isto does the same thing. briše sve globalne promenljive removes all global variables. briše sve kompajlirane M- i MEX-funkcije. briše sve promenljive, globalne promenljive, funkcije i MEX linkove. Preporučuje se upotreba naredbe clear all na početku svakog Matlab programa. 9. Upotreba naredbe close Naredba close zatvara prozor u kome su prikazani grafikoni. close close all close (h) close(ime) close all hidden zatvara aktivan prozor zatvara se prozore sa grafikonima zatvara prozor sa navedenim handle-om zatvara navedeni prozor zatvara sve prozore sa grafikonima uključujuči i skrivene Preporučuje se upotreba naredbe close all na početku svakog Matlab programa. 10. Rad sa m fajlovima i pisanje matlab programa Matlab programi se pišu u m fajlovima. Novi m fajl se kreira opcijom menija File > New > M-file ili tasterom u Editoru. Program se snima opcijom menija File > Save ili tasterom u Editoru, a pokreće tasterom u Editoru. Kreirani fajl se otvara opcijom menija File > Open ili tasterom u Editoru. Ako m fajl nije snimljen u radni direktorijum, prilikom njegovog pokretanja ( sledeći prozor: ) pojaviće se 24

25 Odabirom opcije Change Directory, direktorijum iz koga se pokreće fajl postaje radni direktorijum. Sada se može aktivirati opcija za pokretanje programa. 25

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije Biznis scenario: U školi postoje četiri sekcije sportska, dramska, likovna i novinarska. Svaka sekcija ima nekoliko aktuelnih projekata. Likovna ima četiri projekta. Za projekte Pikaso, Rubens i Rembrant

More information

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri. Potprogrami su delovi programa. Često se delovi koda ponavljaju u okviru nekog programa. Logično je da se ta grupa komandi izdvoji u potprogram, i da se po želji poziva u okviru programa tamo gde je potrebno.

More information

Podešavanje za eduroam ios

Podešavanje za eduroam ios Copyright by AMRES Ovo uputstvo se odnosi na Apple mobilne uređaje: ipad, iphone, ipod Touch. Konfiguracija podrazumeva podešavanja koja se vrše na računaru i podešavanja na mobilnom uređaju. Podešavanja

More information

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. 1) Kod pravilnih glagola, prosto prošlo vreme se gradi tako

More information

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI Za pomoć oko izdavanja sertifikata na Windows 10 operativnom sistemu možete se obratiti na e-mejl adresu esupport@eurobank.rs ili pozivom na telefonski broj

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka 25. novembar 2011. godine 7. čas SQL skalarne funkcije, operatori ANY (SOME) i ALL 1. Za svakog studenta izdvojiti ime i prezime i broj različitih ispita koje je pao (ako

More information

SAS On Demand. Video: Upute za registraciju:

SAS On Demand. Video:  Upute za registraciju: SAS On Demand Video: http://www.sas.com/apps/webnet/video-sharing.html?bcid=3794695462001 Upute za registraciju: 1. Registracija na stranici: https://odamid.oda.sas.com/sasodaregistration/index.html U

More information

1.7 Predstavljanje negativnih brojeva u binarnom sistemu

1.7 Predstavljanje negativnih brojeva u binarnom sistemu .7 Predstavljanje negativnih brojeva u binarnom sistemu U decimalnom brojnom sistemu pozitivni brojevi se predstavljaju znakom + napisanim ispred cifara koje definišu apsolutnu vrednost broja, odnosno

More information

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević GUI Layout Manager-i Bojan Tomić Branislav Vidojević Layout Manager-i ContentPane Centralni deo prozora Na njega se dodaju ostale komponente (dugmići, polja za unos...) To je objekat klase javax.swing.jpanel

More information

Port Community System

Port Community System Port Community System Konferencija o jedinstvenom pomorskom sučelju i digitalizaciji u pomorskom prometu 17. Siječanj 2018. godine, Zagreb Darko Plećaš Voditelj Odsjeka IS-a 1 Sadržaj Razvoj lokalnog PCS

More information

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings Eduroam O Eduroam servisu Eduroam - educational roaming je besplatan servis za pristup Internetu. Svojim korisnicima omogućava bezbedan, brz i jednostavan pristup Internetu širom sveta, bez potrebe za

More information

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

Struktura indeksa: B-stablo.   ls/swd/btree/btree.html Struktura indeksa: B-stablo http://cis.stvincent.edu/html/tutoria ls/swd/btree/btree.html Uvod ISAM (Index-Sequential Access Method, IBM sredina 60-tih godina 20. veka) Nedostaci: sekvencijalno pretraživanje

More information

Otpremanje video snimka na YouTube

Otpremanje video snimka na YouTube Otpremanje video snimka na YouTube Korak br. 1 priprema snimka za otpremanje Da biste mogli da otpremite video snimak na YouTube, potrebno je da imate kreiran nalog na gmailu i da video snimak bude u nekom

More information

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Upute za korištenje makronaredbi gml2dwg i gml2dgn SVEUČILIŠTE U ZAGREBU - GEODETSKI FAKULTET UNIVERSITY OF ZAGREB - FACULTY OF GEODESY Zavod za primijenjenu geodeziju; Katedra za upravljanje prostornim informacijama Institute of Applied Geodesy; Chair

More information

OBJEKTNO ORIJENTISANO PROGRAMIRANJE

OBJEKTNO ORIJENTISANO PROGRAMIRANJE OBJEKTNO ORIJENTISANO PROGRAMIRANJE PREDAVANJE 3 DEFINICIJA KLASE U JAVI Miloš Kovačević Đorđe Nedeljković 1 /18 OSNOVNI KONCEPTI - Polja - Konstruktori - Metode - Parametri - Povratne vrednosti - Dodela

More information

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja.

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja. LabVIEW-ZADACI 1. Napisati program u LabVIEW-u koji računa zbir dva broja. Startovati LabVIEW Birati New VI U okviru Controls Pallete birati numerički kontroler tipa Numerical Control, i postaviti ga na

More information

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB. 9.72 8.24 6.75 6.55 6.13 po 9.30 7.89 5.86 10.48 8.89 7.30 7.06 6.61 11.51 9.75 8.00 7.75 7.25 po 0.38 10.21 8.66 7.11 6.89 6.44 11.40 9.66 9.73 7.69 7.19 12.43 1 8.38 7.83 po 0.55 0.48 0.37 11.76 9.98

More information

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY Softverski sistem Survey za geodeziju, digitalnu topografiju i projektovanje u niskogradnji instalira se na sledeći način: 1. Instalirati grafičko okruženje pod

More information

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C INFOTEH-JAHORINA Vol. 10, Ref. E-I-15, p. 461-465, March 2011. Implementacija sparsnih matrica upotrebom listi u programskom jeziku C Đulaga Hadžić, Ministarstvo obrazovanja, nauke, kulture i sporta Tuzlanskog

More information

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd, AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje Marko Eremija Sastanak administratora, Beograd, 12.12.2013. Sadržaj eduroam - uvod AMRES eduroam statistika Novine u okviru eduroam

More information

IZRADA TEHNIČKE DOKUMENTACIJE

IZRADA TEHNIČKE DOKUMENTACIJE 1 Zaglavlje (JUS M.A0.040) Šta je zaglavlje? - Posebno uokvireni deo koji služi za upisivanje podataka potrebnih za označavanje, razvrstavanje i upotrebu crteža Mesto zaglavlja: donji desni ugao raspoložive

More information

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a NIS PETROL Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a Beograd, 2018. Copyright Belit Sadržaj Disable... 2 Komentar na PHP kod... 4 Prava pristupa... 6

More information

3D GRAFIKA I ANIMACIJA

3D GRAFIKA I ANIMACIJA 1 3D GRAFIKA I ANIMACIJA Uvod u Flash CS3 Šta će se raditi? 2 Upoznavanje interfejsa Osnovne osobine Definisanje osnovnih entiteta Rad sa bojama Rad sa linijama Definisanje i podešavanje ispuna Pregled

More information

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE)

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 2: Uvod u sisteme

More information

Tutorijal za Štefice za upload slika na forum.

Tutorijal za Štefice za upload slika na forum. Tutorijal za Štefice za upload slika na forum. Postoje dvije jednostavne metode za upload slika na forum. Prva metoda: Otvoriti nova tema ili odgovori ili citiraj već prema želji. U donjem dijelu obrasca

More information

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE CJENOVNIK KABLOVSKA TV Za zasnivanje pretplatničkog odnosa za korištenje usluga kablovske televizije potrebno je da je tehnički izvodljivo (mogude) priključenje na mrežu Kablovskih televizija HS i HKBnet

More information

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT TRAJANJE AKCIJE 16.01.2019-28.02.2019 ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT Akcija sa poklonima Digitally signed by pki, pki, BOSCH, EMEA, BOSCH, EMEA, R, A, radivoje.stevanovic R, A, 2019.01.15 11:41:02

More information

BENCHMARKING HOSTELA

BENCHMARKING HOSTELA BENCHMARKING HOSTELA IZVJEŠTAJ ZA SVIBANJ. BENCHMARKING HOSTELA 1. DEFINIRANJE UZORKA Tablica 1. Struktura uzorka 1 BROJ HOSTELA BROJ KREVETA Ukupno 1016 643 1971 Regije Istra 2 227 Kvarner 4 5 245 991

More information

1. Instalacija programske podrške

1. Instalacija programske podrške U ovom dokumentu opisana je instalacija PBZ USB PKI uređaja na računala korisnika PBZCOM@NET internetskog bankarstva. Uputa je podijeljena na sljedeće cjeline: 1. Instalacija programske podrške 2. Promjena

More information

VBA moduli. mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice

VBA moduli. mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice VBA moduli mr Milovan Milivojević dipl. ing. Visa Poslovno Tehnička Škola - Užice Moduli (modules) ponašanje modula Ponašanje modula može se prilagoditi na 4 načina: Option Explicit Option Private Module

More information

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum:

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum: Programiranje Nastava: prof.dr.sc. Dražena Gašpar Datum: 21.03.2017. 1 Pripremiti za sljedeće predavanje Sljedeće predavanje: 21.03.2017. Napraviti program koji koristi sve tipove podataka, osnovne operatore

More information

Advertising on the Web

Advertising on the Web Advertising on the Web On-line algoritmi Off-line algoritam: ulazni podaci su dostupni na početku, algoritam može pristupati podacima u bilo kom redosljedu, na kraju se saopštava rezultat obrade On-line

More information

Naredba je uputa računalu za obavljanje određene operacije.

Naredba je uputa računalu za obavljanje određene operacije. OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene operacije. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Postupak pisanja programa zovemo programiranje. Programski

More information

PROJEKTNI PRORAČUN 1

PROJEKTNI PRORAČUN 1 PROJEKTNI PRORAČUN 1 Programski period 2014. 2020. Kategorije troškova Pojednostavlj ene opcije troškova (flat rate, lump sum) Radni paketi Pripremni troškovi, troškovi zatvaranja projekta Stope financiranja

More information

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. Idejno rješenje: Dubrovnik 2020. Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. vizualni identitet kandidature dubrovnika za europsku prijestolnicu kulture 2020. visual

More information

Matlab I. prof. dr Aleksandar S. Cvetković prof. dr Slobodan Lj. Radojević

Matlab I. prof. dr Aleksandar S. Cvetković prof. dr Slobodan Lj. Radojević Matlab I prof. dr Aleksandar S. Cvetković prof. dr Slobodan Lj. Radojević Univerzitet u Beogradu Mašinski fakultet Katedra za Matematiku Beograd, 2012. godine Dr Aleksandar S. Cvetković, vanredni profesor

More information

int[] brojilo; // polje cjelih brojeva double[] vrijednosti; // polje realnih brojeva

int[] brojilo; // polje cjelih brojeva double[] vrijednosti; // polje realnih brojeva Polja Polje (eng. array) Polje je imenovani uređeni skup indeksiranih vrijednosti istog tipa (niz, lista, matrica, tablica) Kod deklaracije, iza naziva tipa dolaze uglate zagrade: int[] brojilo; // polje

More information

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći:

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći: Pogledi Ciljevi Poslije kompletiranja ove lekcije trebalo bi se moći: Opisati pogled Formirati novi pogled Vratiti podatke putem pogleda Izmijeniti postojeći pogled Insertovani, ažurirati i brisati podatke

More information

Svojstva olovke x (0,0)

Svojstva olovke x (0,0) Kornjačina grafika O modulu turtle Sadrži funkcije za crtanje Izvođenjem naredbi otvara se grafički prozor veličine 600x600 piksela Olovka (pokazivač) je postavljena u središtu prozora i usmjerena udesno

More information

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports. IZVJEŠTAJI U MICROSOFT ACCESS-u (eng. reports) su dijelovi baze podataka koji omogućavaju definiranje i opisivanje načina ispisa podataka iz baze podataka na papir (ili PDF dokument). Način izrade identičan

More information

Bušilice nove generacije. ImpactDrill

Bušilice nove generacije. ImpactDrill NOVITET Bušilice nove generacije ImpactDrill Nove udarne bušilice od Bosch-a EasyImpact 550 EasyImpact 570 UniversalImpact 700 UniversalImpact 800 AdvancedImpact 900 Dostupna od 01.05.2017 2 Logika iza

More information

Nizovi. Sintaksa. ili. var pera,mika,laza,...,zoran1,zoran2,...,pera1254:real;

Nizovi. Sintaksa. ili. var pera,mika,laza,...,zoran1,zoran2,...,pera1254:real; Nizovi Standardni i nestandardni prosti tipovi podataka (celobrojni, realni, logički, znakovni, nabrojivi i intervalni) mogu biti sasvim dovoljni pri rešavanju manjih i jednostavnijih problema. Međutim,

More information

Služi za brisanje prethodno upisanih sadržaja u čitavom worksheetu. Opcija nije nužna, ali je korisna.

Služi za brisanje prethodno upisanih sadržaja u čitavom worksheetu. Opcija nije nužna, ali je korisna. MS Excel VBA za studente kemije - podsjetnik - Ovaj podsjetnik sadrži kratka objašnjenja i pravilni način pisanja (sintaksu) za sve naredbe koje su obrađene tijekom održavanja Računalnog praktikuma. Dodatak

More information

MS Excel VBA za studente kemije

MS Excel VBA za studente kemije MS Excel VBA za studente kemije - podsjetnik - Ovaj podsjetnik sadrži kratka objašnjenja i pravilni način pisanja (sintaksu) za sve naredbe koje su obrađene tijekom održavanja Računalnog praktikuma 2.

More information

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik) JEDINSTVENI PORTAL POREZNE UPRAVE Priručnik za instalaciju Google Chrome dodatka (Opera preglednik) V1 OPERA PREGLEDNIK Opera preglednik s verzijom 32 na dalje ima tehnološke promjene zbog kojih nije moguće

More information

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 LAB 09 Fizički model podatka 1. Fizički model podataka Fizički model podataka omogućava da se definiše struktura baze podataka sa stanovišta fizičke

More information

Struktura i organizacija baza podataka

Struktura i organizacija baza podataka Fakultet tehničkih nauka, DRA, Novi Sad Predmet: Struktura i organizacija baza podataka Dr Slavica Aleksić, Milanka Bjelica, Nikola Obrenović Primer radnik({mbr, Ime, Prz, Sef, Plt, God, Pre}, {Mbr}),

More information

za STB GO4TV in alliance with GSS media

za STB GO4TV in alliance with GSS media za STB Dugme za uključivanje i isključivanje STB uređaja Browser Glavni meni Osnovni meni Vrsta liste kanala / omiljeni kanali / kraći meni / organizacija kanala / ponovno pokretanje uređaja / ponovno

More information

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS - Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS 1. Pokrenite Adobe Photoshop CS i otvorite novi dokument sa komandom File / New 2. Otvoriće se dijalog

More information

1. MODEL (Ulaz / Zadržavanje / Stanje)

1. MODEL (Ulaz / Zadržavanje / Stanje) 1. MODEL (Ulaz / Zadržavanje / Stanje) Potrebno je kreirati model koji će preslikavati sledeći realan sistem: Svaki dan dolazi određen broj paleta u skladište Broj paleta na nivou dana se može opisati

More information

Priprema podataka. NIKOLA MILIKIĆ URL:

Priprema podataka. NIKOLA MILIKIĆ   URL: Priprema podataka NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Normalizacija Normalizacija je svođenje vrednosti na neki opseg (obično 0-1) FishersIrisDataset.arff

More information

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA KOŽA I TEKSTIL ALU FELGE CJENIK APLIKACIJE CERAMIC PRO PROIZVODA Radovi prije aplikacije: Prije nanošenja Ceramic Pro premaza površina vozila na koju se nanosi mora bi dovedena u korektno stanje. Proces

More information

Klasterizacija. NIKOLA MILIKIĆ URL:

Klasterizacija. NIKOLA MILIKIĆ   URL: Klasterizacija NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Klasterizacija Klasterizacija (eng. Clustering) spada u grupu tehnika nenadgledanog učenja i omogućava grupisanje

More information

Pokretanje izvršnog fajla

Pokretanje izvršnog fajla Pokretanje izvršnog fajla Eksterne komande koje smo do sada prešli na predavanjima su tipično bile smeštene u /bin ili /sbin direktorijumu Aktivirali smo komande jednostavnim kucanjem naziva komande, a

More information

Ali kako znati koja maksimalna plata pripada kojem sektoru? GROUP BY in SELECT Obično se uključuje GROUP BY kolona u SELECT listi.

Ali kako znati koja maksimalna plata pripada kojem sektoru? GROUP BY in SELECT Obično se uključuje GROUP BY kolona u SELECT listi. Database Programming with SQL kurs 2017 database design and programming with sql students slajdovi 9-1 Using Group By Having Clauses Za dobijanje srednje visine studenata: SELECT AVG(height) FROM students;

More information

Office 365, upute za korištenje elektroničke pošte

Office 365, upute za korištenje elektroničke pošte Office 365, upute za korištenje elektroničke pošte Naša ustanova koristi uslugu elektroničke pošte u oblaku, u sklopu usluge Office 365. To znači da elektronička pošta više nije pohranjena na našem serveru

More information

Direktan link ka kursu:

Direktan link ka kursu: Alat Alice može da se preuzme sa sledeće adrese: www.alice.org Kratka video uputstva posvećena alatu Alice: https://youtu.be/eq120m-_4ua https://youtu.be/tkbucu71lfk Kurs (engleski) posvećen uvodu u Java

More information

Pravljenje Screenshota. 1. Korak

Pravljenje Screenshota. 1. Korak Prvo i osnovno, da biste uspesno odradili ovaj tutorijal, morate imati instaliran GOM Player. Instalacija je vrlo jednostavna, i ovaj player u sebi sadrzi sve neophodne kodeke za pustanje video zapisa,

More information

Korak X1 X2 X3 F O U R T W START {0,1}

Korak X1 X2 X3 F O U R T W START {0,1} 1) (8) Formulisati Traveling Salesman Problem (TSP) kao problem traženja. 2) (23) Dato je prostor stanja sa slike, sa početnim stanjem A i završnim stanjem Q. Broj na grani označava cijenu operatora, a

More information

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT Univerzitet u Novom Sadu Fakultet tehničkih nauka Odsek za računarsku tehniku i računarske komunikacije Uvod u GIT Šta je git? Sistem za verzionisanje softvera kao i CVS, SVN, Perforce ili ClearCase Orginalno

More information

PASCAL - Skripta sa zadacima i rješenjima -

PASCAL - Skripta sa zadacima i rješenjima - Elena Krelja-Kurelović, prof. PASCAL - Skripta sa zadacima i rješenjima - SADRŽAJ: I. UVOD U PASCAL...1 1. Tipovi podataka...2 2. Deklariranje varijabli...2 3. Definiranje konstanti...3 II. PISANJE PROGRAMA

More information

Nejednakosti s faktorijelima

Nejednakosti s faktorijelima Osječki matematički list 7007, 8 87 8 Nejedakosti s faktorijelima Ilija Ilišević Sažetak Opisae su tehike kako se mogu dokazati ejedakosti koje sadrže faktorijele Spomeute tehike su ilustrirae a izu zaimljivih

More information

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti MRS LAB 03 MRSLab03 Metodologija Razvoja Softvera Vežba 03 Dijagrami aktivnosti 1. Dijagram aktivnosti Dijagram aktivnosti je UML dijagram koji modeluje dinamičke aspekte sistema. On predstavlja pojednostavljenje

More information

STRUČNA PRAKSA B-PRO TEMA 13

STRUČNA PRAKSA B-PRO TEMA 13 MAŠINSKI FAKULTET U BEOGRADU Katedra za proizvodno mašinstvo STRUČNA PRAKSA B-PRO TEMA 13 MONTAŽA I SISTEM KVALITETA MONTAŽA Kratak opis montže i ispitivanja gotovog proizvoda. Dati izgled i sadržaj tehnološkog

More information

Ikone za brz pristup alatima. Slovne oznake kolona. ime. Traka sa alatima. Dugme Office Brojčane oznake redova

Ikone za brz pristup alatima. Slovne oznake kolona. ime. Traka sa alatima. Dugme Office Brojčane oznake redova Radno okruženje Informatička pismenost Tabelarni proračuni Polje za ime Dugme Office Brojčane oznake redova Polje za formule Ikone za brz pristup alatima Kartice (jezičci) radnih listova Traka sa alatima

More information

DEFINISANJE TURISTIČKE TRAŽNJE

DEFINISANJE TURISTIČKE TRAŽNJE DEFINISANJE TURISTIČKE TRAŽNJE Tražnja se može definisati kao spremnost kupaca da pri različitom nivou cena kupuju različite količine jedne robe na određenom tržištu i u određenom vremenu (Veselinović

More information

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION VFR AIP Srbija / Crna Gora ENR 1.4 1 ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION 1. KLASIFIKACIJA VAZDUŠNOG PROSTORA

More information

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU IMPLEMENTACIJA ALGORITMA ZA DEBLOKADU VEZE U KLOSOVOM KOMUTATORU Diplomski rad Kandidat: Marko Vuković 2006/0094 Mentor: doc. dr Zoran Čiča Beograd, Oktobar

More information

Windows Easy Transfer

Windows Easy Transfer čet, 2014-04-17 12:21 - Goran Šljivić U članku o skorom isteku Windows XP podrške [1] koja prestaje 8. travnja 2014. spomenuli smo PCmover Express i PCmover Professional kao rješenja za preseljenje korisničkih

More information

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU KONFIGURACIJA MODEMA ZyXEL Prestige 660RU Sadržaj Funkcionalnost lampica... 3 Priključci na stražnjoj strani modema... 4 Proces konfiguracije... 5 Vraćanje modema na tvorničke postavke... 5 Konfiguracija

More information

FAKULTET TEHNIČKIH NAUKA

FAKULTET TEHNIČKIH NAUKA UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA Nastavni predmet: Vežba br 6: Automatizacija projektovanja tehnoloških procesa izrade alata za brizganje plastike primenom ekspertnih sistema Doc. dr Dejan

More information

mdita Editor - Korisničko uputstvo -

mdita Editor - Korisničko uputstvo - mdita Editor - Korisničko uputstvo - Sadržaj 1. Minimalna specifikacija računara... 3 2. Uputstvo za instalaciju aplikacije... 3 3. Korisničko uputstvo... 11 3.1 Odabir File opcije iz menija... 11 3.2

More information

Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima

Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima 1. Uvod 2. Preuzimanje programa i stvaranje mapa 3. Instalacija Apachea 4. Konfiguracija Apachea 5. Instalacija PHP-a 6. Konfiguracija

More information

Tablični kalkulator Excel 7.0 Klinča Sela 2005.

Tablični kalkulator Excel 7.0 Klinča Sela 2005. Pripremio: Dragutin Kuhar Tablični kalkulator Excel 7.0 Klinča Sela 2005. Uredio : D. Kuhar SADRŽAJ 1.UVOD...2 1.1 Općenito o tabličnim kalkulatorima...2 1.2 Općenito o Excel-u 7.0...3 2. POČETAK RADA

More information

STABLA ODLUČIVANJA. Jelena Jovanovic. Web:

STABLA ODLUČIVANJA. Jelena Jovanovic.   Web: STABLA ODLUČIVANJA Jelena Jovanovic Email: jeljov@gmail.com Web: http://jelenajovanovic.net 2 Zahvalnica: Ovi slajdovi su bazirani na materijalima pripremljenim za kurs Applied Modern Statistical Learning

More information

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SEMINARSKI RAD U OKVIRU PREDMETA "Računalna forenzika" 2016/2017. GIF FORMAT (.

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SEMINARSKI RAD U OKVIRU PREDMETA Računalna forenzika 2016/2017. GIF FORMAT (. SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA SEMINARSKI RAD U OKVIRU PREDMETA "Računalna forenzika" 2016/2017 GIF FORMAT (.gif) Renato-Zaneto Lukež Zagreb, siječanj 2017. Sadržaj 1. Uvod...

More information

OTVARANJE BAZE PODATAKA I IZRADA TABLICE U MICROSOFT ACCESS-u

OTVARANJE BAZE PODATAKA I IZRADA TABLICE U MICROSOFT ACCESS-u OTVARANJE BAZE PODATAKA I IZRADA TABLICE U MICROSOFT ACCESS-u MS Access je programski alat za upravljanje bazama podataka. Pomoću Accessa se mogu obavljati dvije grupe aktivnosti: 1. izrada (projektiranje)

More information

Pokretanje (startovanje) programa Microsoft Word

Pokretanje (startovanje) programa Microsoft Word Šta je Microsoft Word? Microsoft Word je korisnički (aplikativni) program - tekst procesor, za unos, promenu, uređenje, skladištenje (čuvanje, arhiviranje) i štampanje dokumenta. Word je sastavni deo programskog

More information

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze Trening: Obzor 2020. - financijsko izvještavanje i osnovne ugovorne obveze Ana Ključarić, Obzor 2020. nacionalna osoba za kontakt za financijska pitanja PROGRAM DOGAĐANJA (9:30-15:00) 9:30 10:00 Registracija

More information

Uvod u MS Word. Nova znanja. Novi pojmovi

Uvod u MS Word. Nova znanja. Novi pojmovi Uvod u MS Word Na početku učenja novog programa najbolje ga je pokrenuti i malo prošetati po njemu. Pogledati osnovni izgled prozora, proanalizirati što sadrži, otvarati izbornike i pogledati koje naredbe

More information

Projekat iz predmeta Računarska elektronika

Projekat iz predmeta Računarska elektronika Univerzitet u Beogradu Elektrotehnički fakultet Katedra za elektroniku Projekat iz predmeta Računarska elektronika Autori: Petar Kajganić 045/12 Katarina Rakić 156/12 Београд, мај 2016. Contents 1. Zadatak...

More information

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi)

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi) Programiranje za internet zimski semestar 2013/2014 Java kroz primjere (skripta je u fazi izradi) Zadatak broj 1 Nacrtati kocku. (Zanimljiv teži problem za razmišljanje: Nacrtat kocku čije će dimenzije

More information

OTVARANJE BAZE PODATAKA U MICROSOFT ACCESSU XP

OTVARANJE BAZE PODATAKA U MICROSOFT ACCESSU XP OTVARANJE BAZE PODATAKA U MICROSOFT ACCESSU XP Microsoft Access je programski alat za rad s bazama podataka. Baza podataka u Accessu se sastoji od skupa tablica (Tables), upita (Queries), maski (Forms),

More information

Babylon - instalacija,aktivacija i rad sa njim

Babylon - instalacija,aktivacija i rad sa njim Babylon - instalacija,aktivacija i rad sa njim Babilon je vodeći svetski prevodilac brzog online i offline rečnika sa prevođenjem u preko 75 jezika jednim jednostavnim klikom misa i koriste ga miloni privatnih

More information

Osnovi računarstva II. Uvodne napomene Tipovi podataka i operacije Osnovni algoritamski koraci

Osnovi računarstva II. Uvodne napomene Tipovi podataka i operacije Osnovni algoritamski koraci Osnovi računarstva II Uvodne napomene Tipovi podataka i operacije Osnovni algoritamski koraci OSNOVI RAČUNARSTVA II Predmetni nastavnik: Prof. dr Vesna Popović-Bugarin kabinet 322 Konsultacije ponedjeljkom

More information

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA Master akademske studije Modul za logistiku 1 (MLO1) POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA angažovani su: 1. Prof. dr Momčilo Miljuš, dipl.inž., kab 303, mmiljus@sf.bg.ac.rs,

More information

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ DIZAJN TRENINGA Model trening procesa FAZA DIZAJNA CILJEVI TRENINGA Vrste ciljeva treninga 1. Ciljevi učesnika u treningu 2. Ciljevi učenja Opisuju željene

More information

Programiranje kroz aplikacije. Subprocedure Opseg promenljivih Excel VBA objektni model

Programiranje kroz aplikacije. Subprocedure Opseg promenljivih Excel VBA objektni model Programiranje kroz aplikacije Subprocedure Opseg promenljivih Excel VBA objektni model Subprocedure Subprocedure (makroi) predstavljaju skup VBA naredbi kojima se izvršava određeni zadatak. Subprocedure

More information

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU. Diplomski rad. Beograd, Novembar 2016.

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU. Diplomski rad. Beograd, Novembar 2016. ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU PISANJE SKRIPTI U LINUKSU Diplomski rad Kandidat: Darko Nitković 2010/413 Mentor: doc. dr Zoran Čiča Beograd, Novembar 2016. SADRŽAJ SADRŽAJ... 2 1. UVOD...

More information

Uvod. Microsoft Office Excel

Uvod. Microsoft Office Excel Uvod Microsoft Office Excel Najznačajnije mogućnosti tabelarni proračuni grafički alati pivot tabele programiranje (VBA Visual Basic for Applications) Pokretanje aplikacije 1. Start / Mocrosoft Office

More information

KABUPLAST, AGROPLAST, AGROSIL 2500

KABUPLAST, AGROPLAST, AGROSIL 2500 KABUPLAST, AGROPLAST, AGROSIL 2500 kabuplast - dvoslojne rebraste cijevi iz polietilena visoke gustoće (PEHD) za kabelsku zaštitu - proizvedene u skladu sa ÖVE/ÖNORM EN 61386-24:2011 - stijenka izvana

More information

Datoteke. Skladišta podataka. Organizacija podataka na sekundarnim skladištima

Datoteke. Skladišta podataka. Organizacija podataka na sekundarnim skladištima Datoteke Skladišta podataka Sva skladišta podataka u računaru se mogu grubo podeliti na primarna i sekundarna, a njihova uloga je privremeno ili dugotrajno čuvanje podataka. Primarno skladište često nazivamo

More information

3.2. Prikazati podatke o svim proizvodima, koji se proizvode u Zrenjaninu.

3.2. Prikazati podatke o svim proizvodima, koji se proizvode u Zrenjaninu. Primer 3. Data je sledeća šema baze podataka S = (S, I ), pri čemu je skup šema relacija: S = { Dobavljač({ID_DOBAVLJAČA, NAZIV, STATUS, GRAD}, {ID_DOBAVLJAČA}), Deo({ID_DETALJA, NAZIV, BOJA, TEŽINA, GRAD},

More information

4.1 Korišćenje aplikacije Ćelije Rukovanje radnim listovima... 32

4.1 Korišćenje aplikacije Ćelije Rukovanje radnim listovima... 32 S A D R Ž A J 4 Tabelarni proračuni... 4 4.1 Korišćenje aplikacije... 4 4.1.1 Rad sa radnim sveskama... 4 4.1.1.1 Pokretanje i zatvaranje aplikacije za tabelarne proračune. Otvaranje i zatvaranje radnih

More information

GENERATIVNE FUNKCIJE

GENERATIVNE FUNKCIJE UNIVERZITET U NOVOM SADU PRIRODNO-MATEMATIČKI FAKULTET DEPARTMAN ZA MATEMATIKU I INFORMATIKU Ana Bogdanović GENERATIVNE FUNKCIJE MASTER RAD Novi Sad, 2016. Sadržaj: Predgovor... 2 1. Uvod... 4 1.1. Osnovne

More information

ARHITEKTURA RAČUNARA

ARHITEKTURA RAČUNARA J. ĐORĐEVIĆ, D. MILIĆEV, D. BOJIĆ, A. MILENKOVIĆ, B. NIKOLIĆ, Z. RADIVOJEVIĆ, M. OBRADOVIĆ ARHITEKTURA RAČUNARA ZBIRKA REŠENIH ZADATAKA Beograd 2005. 1.1 ZADATAK 1 PREKIDI Posmatra se procesor sa vektorisanim

More information

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011.

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TECHNOLOGY, INFORMATICS AND EDUCATION FOR LEARNING AND KNOWLEDGE SOCIETY

More information

MATEMATIČKI FAKULTET BEOGRADSKI UNIVERZITET MASTER TEZA

MATEMATIČKI FAKULTET BEOGRADSKI UNIVERZITET MASTER TEZA MATEMATIČKI FAKULTET BEOGRADSKI UNIVERZITET MASTER TEZA Korišćenje HTML-a, PHP-a i MySQL-a u izradi višeslojnih web aplikacija Vanja Petković Beograd, maj 2008 Sadržaj 1 Uvod... 3 2 HTML... 5 2.1 Elementi

More information

Mindomo online aplikacija za izradu umnih mapa

Mindomo online aplikacija za izradu umnih mapa Mindomo online aplikacija za izradu umnih mapa Mindomo je online aplikacija za izradu umnih mapa (vrsta dijagrama specifične forme koji prikazuje ideje ili razmišljanja na svojevrstan način) koja omogućuje

More information

JavaScript podrska u radu sa greskama

JavaScript podrska u radu sa greskama JavaScript podrska u radu sa greskama Svaki od pregledaca ima svoj podrazumevani naci reagovanja na greske, Firefox i Chrome upisuju greske u log datoteku, dok recimo Internet Explorer i Opera generisu

More information