Ha az egér-kurzor ilyen:, akkor a szövegrész „kinyitható”; az aláhúzott szövegre kattintva annak leírását megjelenítheti! Egyéb pöttyözött szöveg súgást (hintet) tartalmaz.
E jobb oldali „kis ablakok” CTRL+R-rel újra láthatóvá tehető.
Ugrás ide:
Legfelsőbb szint
Alprogramok
Adatleírás
Törzs – utasítások
Export-modul
Megvalósító modul
Példák

Algoritmus leíró nyelv – Pszeudokód


Előzetes megjegyzések

Az alábbiakban az ún. klasszikus programozásbeli algoritmus leíró nyelv szintaktikájával foglalkozunk,
az objektumorientálthoz, eseményvezérelthez kapcsolódóval nem;
így még az osztályok definiálása és felhasználása sem kerül szóba; sőt még a szementikát sem érintjük.

Feltesszük viszont a programkészítési elvek ismeretét, amelyek az algoritmikus nyelv definiálásának és
használat módjának alapjául szolgálnak.


Program
Legfelsőbb szint
 Program ProgramNév:
   (Globális) adatleírás
   (Program)törzs
 Program vége.
 
 Alprogram-definíciók
 



Alprogramok – alprogram-definíciók
 Eljárás EljárásNév(Formális paraméter-lista):
   [Ef: predikátum
    Uf: predikátum]
   (Lokális) adatleírás
   (Eljárás)törzs
 Eljárás vége.
 
 Függvény FüggvényNév(Formális paraméter-lista):Típus 
   [Ef: predikátum
    Uf: predikátum]
   (Lokális) adatleírás
   (Függvény)törzs
   FüggvényNév:=kifejezés
 Függvény vége.
 
 Operátor OperátorNév(Formális paraméter-lista):Típus 
   Másként operátor-szintaxisminta
   [Ef: predikátum
    Uf: predikátum]
   (Lokális) adatleírás
   (Függvény)törzs
   FüggvényNév:=kifejezés
 Operátor vége.
 

Megjegyzés:
   Az alprogramok specifikációs része (Ef, Uf) elhagyható.

Formális paraméter-lista az alábbi, vesszővel elválasztott sorozata:

 Konstans paraméterNév:TípusNév vagy Változó paraméterNév:TípusNév
 



Adatleírás
 Típusdefiníciók
 Típusdeklarációk
 

Típusdefiníciók – Típusokat definiáló rész:

 Típus
   TípusNév=Típus vagy Típuskonstrukció

Típusdeklarációk – Konstansokat, változókat memóriába képező rész:

 Konstans
   konstansNév:Típus(kifejezés)
   …
 Változó
   változóNév:Típus

Típus – a standard típus:

 Egész
 Valós
 Logikai
 Karakter
 Szöveg
 

Típuskonstrukció – a standard típuskonstrukció:

 Rekord(
   mezőNév1:típus vagy Típuskonstrukció
   mezőNév2:típus vagy Típuskonstrukció)
 
 Tömb(konstans1..konstans2:Típus)
 
 Tömb(Diszkrét típus:Típus)

 SzekvenciálisFájl(Típus)

 (konstans1,konstans2,...)

 Mutató(Típus) vagy Típus'Mutató
 

Diszkrét típus, amelynél egyértelmű a rákövetkezés (pl. Egész, Logikai, Karakter, felsorolási típusok).




Törzs – utasítások

Beolvasás utasítás:

 Be:változóNév1[Feltétel]
 

Kiírás utasítás:

 Ki:Kifejezés1

Értékadás utasítás:

 változóNév:=Kifejezés

vagy

 változóNév:=Kifejezés;
 

Elágazás utasítás (a különben-ág elhagyható):

 Ha feltétel akkor
   (akkor-ág) törzs
 különben
   (különben-ág) törzs
 Elágazás vége
 

vagy

 Ha feltétel akkor  értékadás utasítás
           különben értékadás utasítás
 

Sok-irányú elágazás (az egyéb-ág elhagyható):

 Elágazás
  feltétel1 esetén
    (feltételes-ág) törzs1
  feltétel2 esetén
    (feltételes-ág) törzs2
  …
    …
  egyéb esetben
    (egyéb-ág) törzs
 Elágazás vége
 

Számlálós ciklus (az „-esével” rész elhagyható):

 Ciklus változóNév=kifejezés-tól kifejezés-ig kifejezés-esével
    (ciklus) törzs
 Ciklus vége
 

Előlfeltételes ciklus:

 Ciklus amíg feltétel
    (ciklus) törzs
 Ciklus vége
 

Hátulfeltételes ciklus:

 Ciklus
    (ciklus) törzs
 amíg feltétel
 Ciklus vége
 

Eljárás-hívás (ha nincs paramétere, akkor a zárójelpár is elhagyható):

 EljárásNév(Aktuális paraméter-lista)
 

Függvény-hívás (ha nincs paramétere, akkor a zárójel-pár is elhagyható):

FüggvényNév(Aktuális paraméter-lista)…
 

Operátor-hívás:

OperátorJel, aktuális paraméterek, az operátor-szintaxismintának megfelelően

Aktuális paraméter-lista: kifejezések, konstansok vagy változók vesszővel elválasztott sorozata.

A típusokhoz, típuskonstrukciókhoz asszociált műveleteket nem soroljuk föl.




Modul
Export modul
 ExportModul TípusNév(Formális paraméter-lista):
   Alprogram fej-sorModul vége.
 

Alprogram fejsor:

 Eljárás EljárásNév(Formális paraméter-lista)
 [Ef: predikátum
  Uf: predikátum]
 

vagy

 Függvény FüggvényNév(Formális paraméter-lista):Típus 
 [Ef: predikátum
  Uf: predikátum]
 

vagy

 Operátor OperátorNév(Formális paraméter-lista):Típus 
 [Ef: predikátum
  Uf: predikátum]
 



Megvalósító modul – Reprezentációs-implementációs modul
 Modul TípusNév(Formális paraméter-lista):
   
   Reprezentáció
     Adatleírás
   
   Implementáció
     Alprogram-definíciók
   
   Inicializálás
     (Inicializáló) törzs
     
 Modul vége.
 



Példák

Algoritmikus nyelvi példákat talál az alábbi dokumentumokban:




Szlávi Péter