Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Funkcuje u Pajtonu
Kao što vam je od ranije poznato, u pajtonu postoje ugrađene funkcije za rad sa brojevima
(matematičke funkcije), fukcije za stringove, funkcije za liste, itd. Neko ih je napisao i sačuvao
u pajton biblioteke, a mi smo ih primenjivali na mestima gde su nam bile potrebne.
Vrednosti koje se upisujemo untar zagrada funkcije su argumenti funkcije. Na osnovu zadatih
argumenata, funkcija se izvršava i kao rezultat vraća neku vrednost na mestu gde je pozvana.
Primeri:
Suština funkcija je da se funkcije napišu jednom, sačuvaju u nekom pajton fajlu (u nekoj
biblioteci), a posle toga mogu da se primenjuju se više puta, na mestima gde god je to
potrebno. Time se ubrzava pisanje koda, pojednostavljuje se kod, i ono što je najbitnije, tako
napisan kod se brže izvršava u procesoru.
Pajton omogućava da mi napišemo (definišemo) neke naše funkcije i da ih primenjujemo gde
god nam trebaju. Potrebno je da funkcije definišemo na početku koda, a tek onda da ih u
nastavku koda primenjujemo(pozivamo) na mestima gde su nam potrebne.
Definisanje funkcije
Neku funkciju možemo definisati na sledeći način:
Za definisanje funkcije koristi se naredba def.
import math
print(min(123, 141, 89, 16, 125)) 16
print(max(13, 241, 98, 116, 325)) 325
print(abs(-123)) 123
print(abs(123)) 123
print(len("informatika")) 11
print(round(135.44)) 135
print(math.ceil(8.4)) 9
print(math.floor(8.4)) 8
print(math.sqrt(min(25,10))) 3.1622
print(math.pow(max(5,2),2)) 25.0
Naziv funkcije se piše malim početnim slovom i može da sadrži slova, cifare i dozvoljene
znakove. Ako u imenu finkcije koristimo više reči, te reči moramo da spojimo ili povežemo
donjom crtom.
Funkcija u svom imenu mora da sadrži otvorenu i zatvorenu zagradu, a unutar zagrade se
upisuju parametri funkcije. Iza zatvorene zagrade se stavlja dvotačka.
Parametri funkcije su promenljive koje se koriste unutar funkcije i oblast važenja im je samo
unutar funkcije. Paramerti funkcije se koriste da se preko njih funkciji zadaju ulazne vrednosti
na osnovu kojih će se funkcija izvršiti i vratiti rezultat.
Blok naredbi je neki niz naredni čijim se izvršenjem dobija neki rezultat funkcije.
Rezultat funkcije se vraća naredbom return. Nije neophodno da u funkciji uvek postoji
naredba return, na primer kada se u funkciji koristi funkcija print za štampanje rezultata.
Primer: Funkcija koja računa kvadrat broja.
definisanje funkcije ime funkcije lista parametara(ulaznih vrednosti)
def kvadrat(x): rezultat = x*x naredbe obrade (telo funkcije) return rezultat
vrednost koju funkcija vraća kao rezultata
Pozivanje funkcije
Prethodno napisan funkcija se poziva na mestima u programu gde je potrebna. Funkcija se
može pozivati više puta, gde god je potrebna.
Primer, izračunati kvadrate brojeva 5 i 45:
kvadrat(5)
kvadrat(45)
Vrednosti (5 i 4) koje smo upisali unutar zagrada pri pozivanju funkvije kvadrat zovu se
argumenti finkcije. Na osnovu zadatih argumenata, funkcija kvadrat izračunava rezultate i
vraća ih na mesto pozivanja funkcije.
Zadaci za vežbanje
F1. Napisati funkciju koja računa kvadrat broja.
F2. Napisati funkciju za sabiranje dva broja.
F3. Napisati funkciju koja na osnovu vrednosti temperature u Celzijusima, izračunava
vrednost temperature u Farenhajtima.
F4. Napisati funkciju koja n-puta ponavlja neki znak ili slovo.
F5. Napisati funkciju koja n-puta ponavlja neki string.
F6. Napisati funkciju koja od * iscrtava pravougaonik dimenzija n x m.
F7. Napisati funkciju koja računa n-ti sptepen broja x.
F8. Napisati funkciju za poređenje dva broja.
F9. Napisati funkciju koja računa faktorijel broja x. (x!=1*2*3*4*….*x)
F10. Napisati funkciju koja računa površinu i obim kvadrata na osovu stranica pravougaonika.
Objašnjenje: Naredba return vraća dva podatka (rezultata), koji se pakuju u torku.Torka je struktura podataka
slična listi. Pojedinačnim vrednostima u torci možemo pristupiti preko odgovarajućeg indeksa na kome se ta
vrednost nalazi u torci. Površina je na indeksu 0, obim je na indeksu 1.
F11. Napisati funkciju koja će vremenski intervala u sekundama preračunati u broj sati,
minuta i sekundi.
F12. Napisati funkciju koja će realan broj napisan sa zarezom kao decimalnim znakom,
pretvoriti u realni broj napisan sa tačkom kao decimalnim znakom.
F13. Napisati funkciju koja će realan broj da razdvoji na celi i decimalni deo.