Skip to content

Procedury

Avocado jest językiem proceduralnym. Oznacza to, że kod programu jest zorganizowany w nazwane bloki zwane procedurami. Głównym celem procedur jest podzielenie skomplikowanego programu na mniejsze, czytelne i łatwiejsze do zarządzania fragmenty.

W Avocado przepływ sterowania rozpoczyna się zawsze w bloku głównym (główny / main), który następnie wywołuje inne zdefiniowane przez programistę procedury

Definiowanie Procedur

Użytkownik może tworzyć własne procedury, używając słów kluczowych w języku polskim lub angielskim. Procedura składa się z nagłówka (nazwy) oraz ciała (bloku kodu) ograniczonego słowami początek i koniec.

Procedura nazewnictwo polskie

 
procedura [NazwaProcedury]
początek
    // Tutaj znajduje się kod procedury
    // np. deklaracje lokalnych zmiennych, obliczenia, wywołania innych funkcji
koniec

Procedura nazewnictwo angielskie

 
procedure [NazwaProcedury]
start
    // Tutaj znajduje się kod procedury
    // np. deklaracje lokalnych zmiennych, obliczenia, wywołania innych funkcji
end

Słowa kluczowe (zamienne)

Język Avocado jest elastyczny i obsługuje dwujęzyczne słowa kluczowe:

  • Nagłówek: procedura lub procedure

  • Początek bloku: początek / poczatek lub start

  • Koniec bloku: koniec lub end

Zasady nazewnictwa:

  • Nazwa procedury musi być unikalna.

  • Nie może zawierać spacji (używaj podkreśleń, np. oblicz_podatek).

  • Nie może zaczynać się od cyfry.

Wywoływanie procedury

Aby wywołać zdefiniowaną procedurę, wystarczy wpisać jej nazwę wnowej linii.

 
program mojprogram

// Główny punkt wejścia
główny
    powitanie
    obliczenia
koniec.

// Definicja pierwszej procedury
procedura powitanie
początek
    pisz_linie('Witaj w Avocado!')
koniec

// Definicja drugiej procedury
procedure obliczenia
początek
    pisz_linie('Druga procedura!')
end

Zmienne Lokalne i Globalne

Avocado rozróżnia miejsce deklaracji zmiennych, co wpływa na ich widoczność (zakres):

Zmienne Lokalne: Zadeklarowane wewnątrz bloku początek ... koniec procedury. Są widoczne tylko dla tej konkretnej procedury. Po zakończeniu procedury są usuwane z pamięci.


procedura test
początek
    tekst a = 'Widoczne tylko tu'
koniec

Zmienne Globalne: Zadeklarowane poza procedurami (zazwyczaj na początku pliku lub przed blokiem główny / main). Są dostępne dla wszystkich funkcji i procedur w programie.


program superprogram
//globalna zmienna
tekst a = 'Siemka'

główny
  test
konie.

procedura test
początek
    //Użycie zmiennej globalnej a
    pisz_linie(a)
koniec