Syntaxe jazyka FERDA

Nejdříve si uvedeme přehled základních příkazů a jejich význam (tomu se říká sémantika příkazu). Tedy pro popis jazyka je nutné znát nejen příslušný termín, ale i co na tento příkaz FERDA provede.

Elementární příkazy

(pro procesor FERDA to jsou základní INSTRUKCE)
KROK Ferda provede posun o jedno políčko ve směru do kterého je otočen. Pokud má před sebou zeď vykřikne a zastaví program. Zkrze zeď ani Ferda nechodí.
VLEVO VBOK Ferda se otočí doleva a kouká zase jinam.
VPRAVO VBOK Ferda se otočí doprava a zase kouká jinam.
CELEM VZAD Ferda se otočí o stoosmdesát stupňů a kouká na opačnou stranu.
POLOZ Ferda položí na políčku kde stojí značku. Pokud již tam tři značky jsou, zakřičí a ukončí program. Více než tři značky Ferda neumí.
ZVEDNI Ferda zvedne z políčku kde stojí značku. Pokud tam není žádná značka, zakřičí a ukončí program.
DOMU Ferda skočí domů. "Domů" je políčko v levém dolním rohu, a otočí se směrem doprava, to jest na směrem na východ.
POMALU FERDA se zobrazuje při každém kroku.
RYCHLE FERDA se do políček nezobrazuje a zobrazí se až po povelu POMALU.
PIP FERDA jednou pípne.
OBRAZ jméno souboru V pravé horní části obrazovky se ukáže obrázek ve formátu BMP.
Příklad:
OBRAZ mravenec.bmp
REKNI nápis Na dolní části okénka se objeví nápis, který následuje za tímto příkazem.
PIS věta V okénku se objeví vložená věta a FERDA čeká na stisk tlačítka OK.
RANDOM VBOK Možnost, jak může FERDA provádět náhodné pohyby. Po provedení tohoto příkazu se FERDA náhodně otočí doleva nebo doprava.
ZASTAV FERDA přeruší svou činnost kdekoliv je tento příkaz uveden. Po stisku tlačítka pokračuj pak FERDA ve své činnosti pokračuje.
KONEC PROGRAMU Tento příkaz je nutné použít na konci programu. FERDA ukončí program.
REM Komentář (ze zkratky REMARK - poznámka). Vše co je uvedeno v tomto řádku slouží jen pro účely programátora. FERDA tento řádek ignoruje, stejně jako by byl prázdný.
PROGRAM Příkaz uváděný na začátku programu je nepovinný a co následuje po něm FERDA neprovádí.


Podmíněný příkaz a cykly

(to jdou základní INSTRUKCE pro řízení činnosti procesoru FERDA)
KDYZ podmínka
příkaz
KONEC KDYZ
První z řady složených příkazů. Jedná se o podmíněný příkaz. Podmínka je výraz, který nabývá logických hodnot PRAVDA nebo NE/PRAVDA. Když je podmínka splněna, FERDA provede příkaz.
Příklad:
KDYZ BUDE ZED
VLEVOVBOK
KONEC KDYZ
KDYZ podmínka
příkaz1
JINAK
příkaz2
KONEC KDYZ
Další složený podmíněný příkaz, tentokrát úplný. Když je podmínka splněna FERDA provede příkaz 1 a když není podmínka splněna provede příkaz2.
Příklad:
KDYZ BUDE ZNACKA
ZVEDNI
JINAK
POLOZ
KONEC KDYZ
CYKLUS číslo
příkaz
KONEC CYKLUS
Pevní z řady cyklů. Jedná se o cyklus s pevným počtem opakování nebo taky cyklus typu FOR TO. Počet opakování je zadán parametrem číslo. Příkaz se opakuje tolikrát, jaká je velikost čísla.
Příklad:
CYKLUS 10
KROK
KONEC CYKLUS
DOKUD podmínka
příkaz
KONEC DOKUD
Cyklus typu DOKUD (WHILE) nebo také cyklus s podmínkou na začátku cyklu. Příkaz se opakuje dokud není podmínka splněna.
Příklad:
DOKUD NEBUDE ZED
KROK
KONEC DOKUD
OPAKUJ
příkaz
AZ DO podmínka
Cyklus typu OPAKUJ (REPEAT)
Příklad:
OPAKUJ
krok
AZ DO BUDE ZED


Podmínky

Podmínky se používají v příkazech, které je vyžadují, což jsou podmíněné příkazy a příkazy cyklů DOKUD a OPAKUJ. FERDA rozlišuje pouze některé podmínky. Umí určit zda bude či nebude zeď, zda bude či je nebo není značka, umí určit počet značek (jedna, dvě a tři značky) a orientuje se na světové strany (SEVER je nahoře na obrazovce, VYCHOD vlevo). V následující tabulce jsou uvedeny všechny kombinace podmínek, které FERDA zná

první slovo druhé slovo význam podmínky a příklad
BUDE
NEBUDE
ZED
ZNACKA
1
2
3
Lze kombinovat první a druhé slovo. Je-li podmínka splněna nabývá logické hodnoty PRAVDA jinak NEPRAVDA.
Příklad:
BUDE ZED
NEBUDE 2
JE
NENI
ZNACKA
1
2
3
VYCHOD
SEVER
ZAPAD
JIH
Lze kombinovat první a druhé slovo. Je-li podmínka splněna nabývá logické hodnoty PRAVDA jinak NEPRAVDA.
Příklad:
JE ZNACKA
NENI SEVER
OTAZKA libovolná věta Aby FERDA mohl reagovat na nečekané situace, je možné jako podmínku použít příkaz OTAZKA věta. Při provádění tohoto příkazu FERDA položí otázku, na kterou lze odpovědět pouze ANO či NE. Podle druhu odpovědi pak podmínka v příkazu je nebo není splněna.

Procedury a funkce

PROC_jméno

DF_jméno
tělo procedury
KONECPROC
Volání procedury. Procedurou se rozumí nově zavedený příkaz, který FERDA nemá v základní slovníku. Používá se tehdy, pokud slovník základních příkladů je nedostatečný, ale zejména pro udržení přehlednosti programu.
FERDA rozumí všem příkazům, které byly před vlastním prováděním programu zavedeny. Proceduru, předtím než ji budeme používat, je nutné zavést - definovat. Pro definici procedury se používá příkaz DF_jméno, který musí být uveden v části programu až za příkazem KONEC PROGRAMU.
Příklad:
volání procedury PROC_DVOJKROK
a definice
DF_DVOJKROK
KROK
KROK
KONECPROC
Aby se procedura provedla jako nový příkaz je možné ji nechat provádět RYCHLE (bez zobrazování).
Příklad:
DF_DVOJKROK
RYCHLE
KROK
KROK
POMALU
KONECPROC