Professional Documents
Culture Documents
Operatori i funkcije
Relacioni i logički operatori - (funkcija if)
Korisnički definisane funkcije
Globalne promenljive
Klikom na neku od ovih 9 ikona otvara se podpaleta sa skupom operatora. Ove podpalete možete
pomerati na mesto gde vam odgovara. U podpaletama se nalaze operatori i funkcije.
Operatori: Aktiviranjem nekih od operatora ćete dobiti grafički izgled operatora i, u zavisnosti od
operatora, određen broj plejsholdera koje treba ispuniti. Na primer, ako postavite miša na
Calculator palete i izaberete operator +.
Na primer ako izaberete sledeći operator iz Calculus palete na ekranu ćete dobiti
1 − 1
∑ = 35.591
100 x
x
x =1
Izraz se formira pomoću operanada i operatora vodeći računa o položaju linija za editovanje (već
smo to spominjali). Iako svaki operator možete izabrati iz palete, jednostavnije je i brže da one
najčešće korištene unosite sa tastature kao što smo već i radili.
Mathcad se trudi da bude intuitivan i da operatori liče onim operatorima koji se koriste u
matematici.
Pokušajte da pomoću operatora za određeni integral (nađite ga) izračunate određeni
integral funkcije
x
1+x
2
u intervalu [0,1]. Primetite koliko ovaj operator ima operanada i pokušajte u određene
plejsholdere da ubacite ono što se od vas očekuje (slično - skoro isto- kao u
matematici)
Funkcije: Funkcije su slične operatorima samo za razliku od operatora one nemaju grafički
izgled sličan matematičkoj notaciji nego imaju ime i jedan ili više argumenata (operatori imaju
operande). Imena funkcija podležu istim pravilima kao i imena promenljivih. Ako, na primer, iz
Calculator palete kliknete na sin dobićete sledeće
sin( )
Ovo je funkcija za izračunavanje sinusa ugla koji je dar u radijanima. Ima jedan argument
(plejsholder). Kada ga ispunimo možemo da dobijemo rezultat
sin
3.14
=1
2
Naravno ovo isto možete dobiti i unosom sa tastature
sin(3.14/2)=
U plejsholdere i kod operatora (operatori) i funkcija (argumenti) možete uneti izraze. Kako u
Calculator paleti ima samo nekoliko funkcija gde li su ostale?. Kada vam treba neka ugrađena
funkcija nju možete dobiti pomoću Insert=>Function opcije ili izborom
iz palete alata ispod glavnog menija. Tada dobijate sledeće
Mathcad ima "mali milion" ugrađenih funkcija. Funkcije su razvrstane po kategorijama (Function
Function
Category). Iz određene kategorije birate potrebnu funkciju (Function name). Pored toga vidite
koliko funkcija ima argumenata (acos(z) ima jedan argument z) i kratko objašnjene šta ta funkcija
radi. Ako vam to nije dovoljno možete kliknuti na ? i ući u opširan Help system Mathcad-a. Kada
odaberete željenu funkciju kliknete na Insert i funkcija se ubacuje u radni list. U početku ćete
često pozivati ovu opciju za insertovanje funkcija ali ćete ih vremenom zapamtiti jer je brže unositi
ih sa tastature.
Kao i ugrađene promenljive tako i ugrađene funkcije možete redefinisati. Pogledejte
sledeće objašnjenje.
Ako otkucate
sin=
Dobićete na ekranu
Mathcad vas obaveštava da je sin ime funkcije koji je bezdimenzionalan i daje bezdimenzionalan
rezultat.
sin=
Dobićete
sin = 16.7
To znači da "od sad pa nadalje i ubuduće" u ovom radnom listu sin više nije funkcija nego
promenljiva sa datom vrednošću. Ako posle ovog slučajno pokušate
sin(3.14/2)=
sin
3.14
=
2
Kliknite u crveni region i pročitajte objašnjenje
Nota: Preporuka je da proverite da li ime promenljive nije već "zauzeto" nekom funkcijom koja će
vam eventualno biti potrebna. Ako vam ta funkcija nije potrebna možete imenovati promenljivu istim
imenom.
Na primer
7 =7 =1 Ovo može da zbuni ali u prevodu znači de je rezlutat operatora da li je 7
jednako 7 tačno (rezultat je 1)
5>1=1 manje
3≤2=0 manje ili jednako
10 ≠ 10 = 0 različito
¬1 = 0 Logičko NE (unarni operator)
1∧0=0 Logičko I
1∨0=1 Logičko ILI
1⊕1=0 Logičko ekskluzivno ili (EXILI)
5+2>6=1 Primetite prednost aritmetičkih nad relacionim
(ako niste sigurni koristite zagrade)
if(logizraz,izraz1,izraz0)
i kao rezultat vraća ili izraz1 (ako je logički izraz logizraz tačan ili izraz0 ako je logički izraz
logizraz netačan). izraz1 i izraz0 dva mogu biti numeričke konstante - brojevi, promenljive,
izrazi (čak i nova if funkcija) ili čak tekstualne konstante
Na primer:
1.U zavisnosti od vrednosti promenljive Temp dobijamo rezultat tečno ili čvrsto
Temp := 20
laminarno Re ≤ 2100
prelazno 2100 < Re ≤ 50000
turbulentno Re > 50000
Re := 10000
if ( Re > 50000 , "turbulentno" , if ( Re > 2100 , "prelazno" , "laminarno" ) ) = "prelazno"
f := if Re > 2100 ,
16 0.0791
, f = 0.014
Re
Re 4
Na primer
x=y ovaj region ništa ne izračunava. To je isto kao da ste napisali
x+ y ili
tako da se relacioni operator = često koristi kada želimo da napišemo neki jednačinu (da
koristimo jednako) ali da se nista ne računa. Ovo je najčešće slučaj pri objašnjavanju nečega ili
u estetske svrhe. Na primer:
cp ( T) := a + b ⋅ T + c⋅ T + d ⋅ T
2 3
• Indeks p u imenu funkcije je dobijen tako što smo ime funkcije otkucali kao c.p ...sve što se
Obratite pažnju na nekoliko stvari.
u imenu promenljive ili funkcije otkuca posle tačke se spušta u indeks. Ovde p nema
vrednost nego je samo deo imena promenljive. Ovakav indeks se zove literalni ili "kobajagi"
indeks. Kod vektora i matrica indeks se drugačije unosi i ima vrednost (oko ovih indeksa
često se prave zabune pa ćemo to ponoviti nekoliko puta na odgovarajućim mestima)
• Iza imena funkcije u malim zagradama stoje imena fiktivnih argumenata razdvojeni
zagradama - u ovom slučaju samo jedan argument T. Posle operatora za definisanje vrednosti
:= je izraz (isto kao i za definisanje promenljive). Primetite da i u izrazu figuriše fiktivni
argument T. Pored fiktivnog argumenta figurišu a,b i c. To su promenljive koje prethodno
moraju biti definisane
⌠ 2
T
∆Ha T2 , T1 := cp ( T) dT
( )
(1)
⌡T
1
Da bi ste otkucali ∆ koristite Greek paletu. Određeni integral je u Calculus paleti. Primetite da u
ovom izrazu figuriše već definisana funkcija za toplotni kapacitet cp ( T). Ugrađene i korisnički
definisane funkcije mogu figurisati u izrazima jer (kao i operatori) daju rezultat.
Takođe smo ovaj integral mogli da izračunamo "peške" pa bi smo dobili sledeću definiciju
entalpije
∆Hb T2 , T1 := a⋅ T2 − T1 + ⋅ T2 − T1 + ⋅ T2 − T1 + ⋅ T2 − T1
( ) ( )
b 2 2 c 3 3 d 4 4
(2)
2 3 4
Pozivom funkcija ∆Ha i ∆Hb sa stvarnim argumentima dobijamo iste rezultate kao što
bi trebalo i da bude
Nota: Funkcija se definiše jednom a može se pozvati (koristiti) više puta. Tako se pri definiciji kao
argumenti koristi termin fiktivni argumenti ili fiktivne promenljive. Njihovo ime nije od značaja. Od
značaja je njihov broj, redosled i tip (videćemo šta tip znači). Na primer: funkciju (1) smo mogli
da definišemo kao
⌠
većeT
∆Ha( većeT , manjeT) :=
⌡
c p ( T) dT (3)
manjeT
i da njenim pozivom sa stvarnim argumentima dobijemo isti rezultat. Stvarni argumenti su, u
opštem slučaju, izrazi. Na primer
∆Ha( T2 , T1 ) = 4.426 × 10
3
ili
∆Ha( 200 , 50) = 4.426 × 10
3
To := 50
ili
Ovo funkcioniše tako što se fiktivni argumenti u definiciji funkcije zamenjuju stvarnim po
odgovarajućem redosledu pa se izračuna izraz sa desne strane definicije funkcije i to dobijemo
kao rezultat.
Evo primera gde ćemo to pokušati da još više razbistrimo
prva( x) := 1 + x
druga ( x) := 2 + x
treca( x , y) := x + y
3
cetvrta( x , y) := ( x + y)
2
Definisali smo četiri funkcije. Prve dve imaju jedan argument a druge dve dva argumenta
druga ( x + y) = 7 a ovde?
treca( y , x) = 11 a ovde?
cetvrta( y + 1 , x − 4 ) = 4 a ovde?
Već smo spomenuli da se radni list izračunava odozgo nadole i sleva nadesno. Tako ako
pogledate sledeći primer možete se naći u zabuni
a := 2 b := 3 definicija promenljivih a i b
a := 6 b := 4 nove definicije a i b
Pozivamo funkciju:
X := 10
Stvarni argument je X i ima vrednost 10. To nije sporno. Međutim, pri pozivu funkcije fiktivni
argument x se zamenjuje sa stvarnim X ali se vrednosti za a i b se uzimaju one koje prethode
definiciji funkcije tj prethodno definisane.
2) Globalne promenljive. Zbog prethodno naglašenih stvari oko redosleda izračunavanja regiona i
korištenja funkcija nekada je korisno imati promenljive koje važe u čitavom dokumentu bez obzira
Pogledajmo primer
Ag ≡ 50
Bg ≡ Ag + 100 Bg = 150
Za sada nema neke razlike dok god se držimo pravila "odozgo nadole i sleva nadesno". Na osnovu
toga, naravno, ovo nije dozvoljeno
B1 ≡ A1 + 5
A1 ≡ 10
Međutim ako koristimo i jedan i drugi operator nepažljivo može doći do greške.
Globalna promenljiva koja je definisana izrazom koristi globalno definisane promenljive.
Pogledati žuti (gore iznad), plavi i zelene regione.
Ag := 10
Ag := 100 Bg = 56
Bg := Ag + 10 Bg = 110 Ovde se koristi poslednje definisano A
bez obzira što je A definisano globalno (žuti region)
a1 ≡ 6 b1 ≡ 4
Pozivamo funkciju:
X := 10
Lokalno definisana funkcija uzima prethodno definisane promenljive (lokalne ili globalne) iznad ili sa
leve strane definicije (znači 2 i 3)
a2 ≡ 20 b2 ≡ 30
a2 := 2 b2 := 3
funkcija2( x) ≡ a2 + b2 + x
a2 ≡ 6 b2 ≡ 4
Pozivamo funkciju:
X := 10
X := 10
a3 ≡ 1 b3 ≡ 1
funkcija3( X) = 210 Mathcad se ne buni jer je funkcija definisana ispod ali globalno
ali obratite pažnju koje vrednosti za a3 i b3 su uzete
a3 ≡ 100 b3 ≡ 100
funkcija3( X) = 210
funkcija3( x) ≡ a3 + b3 + x
b3 ≡ 300 a3 ≡ 200
funkcija3( X) = 210
Nota: Ne koristiti globanu definiciju promenljive ili funkcije ako nije preko potrebno.
Iako ćete uglavnom koristiti lokalne definicije operatorom := evo primera korisnog definisanja
promenljivih kao globalne. Zamislite sad situaciju gde vam je potrebno da menjate a i b ali da
lokalnu definiciju funkciju ne menjate (da ostane samo jedan fiktivni argument). Ako je između
poziva i definicije funkcije mnogo regiona morate se vraćati i stalno iznad definicije funkcije
ispravljati a i b. To ćete rešiti tako što ćete u celom dokumentu na vama odgovarajućem mestu
samo jednom globalno definisati odgovarajuće promenljive i menjati ih po potrebi. One će se
primenjivati na ceo dokument.
Na primer:
fja( x) := aglob + bglob + x lokalna definicija funkcije, aglob i bglob nisu definisane iznad a
Mathcad se ne buni, znači da su definisane negde ispod ali kao
globalne
Zamislite ovde mnogo regiona koje slede, znači mnogo praznog prostora
X := 20
fja( X) = 50 Ovde je poziv funkcije
_________________________________________________________________________Kraj