print('Pierwsza linia programu')

# Definicja funkcji. Podczas definiowania treść funkcji się jeszcze nie wykonuje.
def aaa():
    print('----Początek funkcji aaa----')
    print('|   aaa, kotki dwa')
    print('----Koniec funkcji aaa----\n')

print('Funkcja aaa została zdefiniowana.', aaa)
print('Teraz wywołam funkcję aaa:')
aaa()
# wywołanie funkcji - invoke, call
# teraz wykonała się zawartość tej funkcji

# Funkcja może mieć zadeklarowane parametry.
# Jedna funkcja może wywołać inną funkcję.
def bbb(ile_razy):
    print('Początek funkcji bbb. Parametr ma wartość', ile_razy)
    for i in range(ile_razy):
        aaa()
    print('To już koniec bbb')

print('Funkcja bbb została zdefiniowana.', bbb)
print('Teraz ją wywołam:')
bbb(3)

print('Ostatnia linia programu')
