Numerička matematika 2.vježbe
Sadržaj Uvjetna grananja Petlje Funkcije
Uvjetna grananja
Određene naredbe ili djelove koda moguće je izvršavati ili preskočiti ovisno o vrijednosti postavljenog logičkog uvjeta.
If naredba Osnovna sintaksa if naredbe je if condition : command Ukoliko imamo više uvjeta koristimo se logičkim veznicima: and(i), or(ili), not (ne) Npr: if condition1 and condition2 : command
Uvjetna grananja Ako imamo više naredbi sintaksa je sljedeća: if condition : command 1; command 2; command 3; Ili: if condition : command 1; command 2; command 3;
Primjer 1. Napišite Python program u kojemu ćete varijabli a pridružiti neku vrijednost, zatim (pomoću if naredbe) ukoliko je varijabli a pridružena negativna vrijednost, pridružite joj apsolutnu vrijednost postojeće vrijednosti, te njenu novu vrijednost uvećajte za 1.
Primjer 1. a= -5 if a<0: a=abs(a); a+=1; print a Ili a=-5 if a<0: a=abs(a); a+=1; print a
Naredba else Sintaksa else naredbe je: if condition : command1 else: command2
Ova naredba omogućuje složeniji oblik grananja od naredbe if.
Naredba ima dvije grane koje se mogu izvršiti u ovisnosti o uvjetu.
Primjer 2
Napišite program u kojemu ćete varijablama a i b pridružiti proizvoljne vrijednosti, zatim pomoću if i else naredbi ispišite da li je varijabla a jednaka ili različita od varijable b.
Primjer 2. #a=b= -5 a,b=3,2 if a==b: print "varijabla a je jednaka varijabli b"; else: print "varijabla a je razlicita od vrijable b";
Koja je druga mogućnost za pisanje ovog programa?
Primjer 2. #a=b= -5 a,b=3,2 if ab: print "varijabla a je razlicita od vrijable b"; else: print "varijabla a je jednaka varijabli b";
Naredba elif Sintaksa elif naredbe je: if condition1 : command1 elif condition2 : command2 elif condition3 : command3
Ukoliko koristimo if-elif-else grananje uvjek će se izvršiti samo jedan set naredbi.
Primjer 3.
Napravite Python program u kojemu ćete varijabli a pridružiti neku brojčanu vrijednost, a zatim pomoću if-elif-else grananja ispišite da li je vrijednost od a pozitivna , negativna ili jednaka 0.
Primjer 3. a=0 if a>0: print "vrijednost varijable a je pozitivna"; elif a<0: print "vrijednost varijable a je negativna"; else: print "vrijednost varijable a je 0"
Primjer 4. – zadatak sa testa a,b=1 #(a=b=1) if a<-2: b=b-a; elif a>=0: b=b+a; else: b=-6; b=b+6 Vrijednost varijable b?
Petlje – naredba for Naredba for se koristi za iteriranje elemenata u nekom nizu (lista, polje, string,..). Njezina osnovna sintaksa je: for iter in list : commands Naredbe commands izvršavaju se jednom za svaki element iz niza list. Objekt iter je iterator koji pokazuje na elemente niza list.
Primjer 5. Pomoću naredbe for ispišite sve brojeve od 1 do 20. for i in range(1,21): print i;
Primjer 6. Odredite zbroj prvih 20 prirodnih brojeva pomoću for petlje. zbroj=0 for i in range(1,21): zbroj+=i; print zbroj
Primjer 7. Odredite zbroj brojeva 4,13,2,7,65 pomoću for petlje.
Primjer 7. zbroj=0 for i in [4,13,2,7,65]: zbroj+=i; print zbroj
Naredba while Osnovne sintaksa naredbe je while conditon : commands
Naredbe commands izvršavaju se dokle god je uvjet condition istinit
Primjer 8. Pomoću while petlje ispišite sve prirodne brojeve čiji je kvadrat manji od 25. a=1 while a*a<25: print a; a+=1;
Funkcije Najjednostavnija sintaksa koja omogućuje definiranje funkcije je: def functionname():commands Funkciju je moguće proširiti na način da prima jedan ili više argumenata. Argumenti se definiraju pomoću imena argumenata razdvojenih zarezom u zagradama nakon imena funkcije.
Primjer 9.
Definirajte funkciju koja vraća zbroj dva broja koji su joj proslijeđeni pomoću argumenata.
def zbroj(a,b): return a+b; print "zbroj brojeva 4 i 5 je :", zbroj(4,5)
Primjer 9. Ako bi uradili sljedeće: def zbroj(a,b=3): return a+b; print "zbroj brojeva 4 i 5 je :", zbroj(4,5) Rješenje bi bilo dobro, imamo zadanu defaultnu vrijednost argumenta b , ali ukoliko postavimo neku drugu vrijednost u pozivu funkcije, priznaje se ta nova vrijednost, s tim da bi u ovom slučaju mogli smanjiti broj argumenata u pozivu funkcije ako nam treba zbroj nekog broja sa brojem 3. def zbroj(a,b=3): return a+b; print "zbroj brojeva 4 i 3 je :", zbroj(4) Bitno : Argumenti kojima zadajemo defaultnu vrijednost moraju biti navedeni zadnji.
Primjer 10. Definirajte funkciju koja vraća zbroj, razliku i umnožak dva broja koji su joj proslijeđeni pomoću argumenata. def fun(a,b): return a+b, a-b, a*b print fun(4,5) #tuple print "zbroj brojeva 4 i 5 je :", fun(4,5)[0] print "razlika brojeva 4 i 5 je :", fun(4,5)[1] print "umnozak brojeva 4 i 5 je :",fun(4,5)[2]