P11

***Funkcje***


Funkcje to fragment kodu, który będziemy wykorzystywać wielokrotnie w naszym programie. Funkcje tworzy się też w celu uporzadkowania kodu oraz w przypadku wykorzystania rekurencji.

**Definiowanie funkcji**

Funkcje definiujemy od słowa kluczowego def, nastepnie jest nazwa funkcji oraz argumenty w nawiasie. W przypadku funkcji bezargumentowej nawias pozostaje pust, ale o tym poniżej. Instrukcje w funkcji są wcięte. Funkcja, która ma zwracać argumenty powinna posiadać instrukcję return. Używamy go też do przerwania funkcji.

def nazwa_funkcji(argument1, argument2)
    instrukcja
    instrukcja
    return argument1+argument2    # w tym wypadku zwraca sumę dwóch argumentów


**Funkcja nie zwracająca argumentów**

Poniższa funkcja nie zwraca i nie używa żadnego argumentu, wyświetla tylko napis.

def tytul():            #definicja funkcji

    print("""
            __                __                 __      __            __        .__ 
         _/  |_  ____       |__| ____   _______/  |_  _/  |_ ___.__._/  |_ __ __|  | 
         \   __\/  _ \      |  |/ __ \ /  ___/\   __\ \   __<   |  |\   __\  |  \  | 
            |  | (  <_> )     |  \  ___/ \___ \  |  |    |  |  \___  | |  | |  |  /  |__
          |__|  \____/  /\__|  |\___  >____  > |__|    |__|  / ____| |__| |____/|____/
                        \______|    \/     \/                \/                     
    """)

tytul()                         #wywołanie funkcji w programie

**Funkcje z argumentami**

Częściej wykorzystywać będziesz funkcje, które pobierają i przekazują argumenty (zmienne).

np.

#definiowanie funkcji
def suma(a,b):

    return a+b


#program właściwy
a=int(input('Podaj a'))
b=int(input('Podaj b'))

print(suma(a,b))

np.

def dzielenie(x,y):

    if y==0:
        return print('pamiętaj cholero nie dziel przez zero')
    else:
        return x/y



print('program dzieli x/y')
x=int(input('podaj x '))
y=int(input('podaj y '))

print(dzielenie(x,y))