Co to jest definicja funkcji?
Definicja funkcji (nazywanej również procedurą) to stworzenie nazwanego bloku kodu, który wykonuje określone zadanie. Zamiast pisać ten sam kod wielokrotnie w różnych miejscach programu, definiujesz go raz, nadajesz mu nazwę, a następnie możesz go używać (wywoływać) wielokrotnie.
Można o tym myśleć jak o tworzeniu nowej, własnej komendy w języku Avocado.
Składnia Definicji
W Avocado definicja funkcji składa się z trzech głównych części:
-
Nagłówek: Określa, że tworzymy nową funkcję i nadaje jej unikalną nazwę.
-
Blok startowy: Słowo kluczowe oznaczające początek instrukcji.
-
Ciało funkcji: Kod, który ma się wykonać.
-
Blok końcowy: Słowo kluczowe oznaczające koniec definicji.
Schemat ogólny:
funkcja nazwa_twojej_funkcji
początek
// Tutaj wpisujesz instrukcje
// np. deklaracje zmiennych, operacje
koniec
Zasady Tworzenia Definicji
Aby funkcja była poprawna i bezpieczna, należy przestrzegać kilku reguł:
-
Lokalizacja: Funkcje definiujemy poza blokiem main. Zazwyczaj umieszcza się je pod blokiem głównym programu.
-
Unikalność: Nazwa funkcji nie może się powtarzać w obrębie jednego programu.
-
Nazewnictwo:
- Nazwa nie może zawierać spacji (używaj _ , np. moje_obliczenia).
- Nazwa nie może zaczynać się od cyfry.
- Nie używaj nazw zarezerwowanych (np. nie nazywaj funkcji if lub start).
-
Zawartość: Wewnątrz definicji możesz deklarować zmienne lokalne. Zmienne te będą widoczne tylko wewnątrz tej funkcji (pomiędzy początek a koniec).
- Przykłady
Funkcja z logiką i zmiennymi lokalnymi nazewnictwo polskie
program mojafunkcja
główny
lc wynik = dodaj(5, 10)
lc wynik2 = subtract(10, 2)
pozycja_kursora(10,50)
pisz_linie('Wynik dodawania: ', wynik)
pisz_linie('Wynik odejmowania: ', wynik2)
koniec.
//funkcja nazewnictwo polskie
funkcja dodaj(a: lc; b: lc): lc
początek
lc n = 10
zwróć a + b + n
koniec
//funkcja nazewnictwo angielskie
function subtract(a: lc; b: lc): lc
start
int n = 5
return a - b - n
end
- Różnica między Definicją a Wywołaniem
Ważne jest rozróżnienie dwóch pojęć:
-
Definicja (Tworzenie): To moment, w którym piszesz procedura nazwa ... początek ... koniec. W tym momencie kod nie jest jeszcze wykonywany, komputer tylko "uczy się", co ta funkcja ma robić.
-
Wywołanie (Użycie): To moment, w którym w bloku główny / main (lub innej funkcji) wpisujesz samą nazwę funkcji. Wtedy komputer skacze do definicji i wykonuje zawarty tam kod.
| Słowo kluczowe / Funkcja | Polska | Polska (bez diakrytyki) | Angielska | Opis |
|---|---|---|---|---|
| deklaracja funkcji | funkcja | funkcja | function | Deklaracja własnej funkcji. Pozwala określić nazwę, parametry i typ zwracany. |
| zwracanie wartości | zwróć | zwroc | return | Służy do zwrócenia wartości z funkcji. Może być użyte tylko wewnątrz funkcji. |
| lokalna zmienna | zmienna | zmienna | local variable | Zmienna zadeklarowana wewnątrz funkcji, dostępna tylko w jej zakresie. |