Дефиниција функције почиње речју def након тога се наводи назив функције, затим у заградама наведени улазни параметри функције и симбол двотачка (:). Након те прве линије наводи се тело функције, које мора бити мало увучено.
Код најједноставнијих функција (као што су ове две наведене у примерима) тело функције представља само наредба return након које се налази израз који представља везу између улазних параметара и резултата функције.
Код компликованијих функција у телу се налазе дужа израчунавања, али се и даље у телу функције (најчешћње на самом крају) налази наредба return иза које се наводи вредност функције (то може бити и име променљиве у којој је израчуната резултујућа вредност).
def obim_pravougaonika(a, b):
return 2 * a + 2 * b
print(obim_pravougaonika(3, 5))
print(obim_pravougaonika(4.2, 5.7))
Једини разлог да уведемо функције у ових неколико примера био је да се добију разумљивији програми, прегледнији, да их скратимо у случају када се делови програма понављају.
Задаци:
1. Дефиниши функцију која на основу дужине странице израчунава површину квадрата.
def povrsina_kvadrata(strana): # dopuni ovaj i naredni red
return strana^2
#Obratiti pažnju zašto je promenljiva strana, a ne promenljiva a!!!!
a = int(input("Unesi dužinu stranice kvadrata: "))
print(povrsina_kvadrata(a))
2.Претварање центиметара у метре и остатак у центиметрима.
def cm_u_mcm(cm):
return (cm // 100, cm % 100)
(m, cm) = cm_u_mcm(178)
print(178, "cm", "=", m, "m", "i", cm, "cm")
3. Основна плата једног радника у првом месецу била је 48.375 динара. У наредном месецу је повећана за 10%, затим је у наредном месецу смањена за 5%, а затим је у наредном месецу опет повећана за 15%. Приликом сваке промене, плата је заокруживана на најближи цео број динара. Колико је износила плата тог радника у четвртом месецу?
def promena_plate(plata, procenat):
return int(round(plata * (1+procenat/100)))
plata1 = 48375
plata2 = promena_plate(plata1, 10)
plata3 = promena_plate(plata2, -5)
plata4 = promena_plate(plata3, 15)
print(plata4)
4. Дефиниши функцију која израчунава обим троугла ако су познате дужине његове три странице. Употреби је да израчунаш обим Питагориног троугла коме су дужине страница 3, 4 и 5.
5. У САД се за мерење растојања између градова користе миље. Једна миља има 1,609 километара. Дефиниши функцију која на основу растојања у миљама израчунава растојање у километрима. Употреби је након тога да прерачунаш 3 миље, 5 миља и 7.5 миља у километре.