Rajzolás (I, II, III, IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
elore :m e U m szám A teknőc :m lépésnyit lép előre.
hátra :m h U m szám A teknőc :m lépésnyit lép hátra.
jobbra :a j U a szám A teknőc :a foknyit fordul jobbra.
balra :a b U a szám A teknőc :a foknyit fordul balra.
irány K Értéke a teknőc jelenlegi fordulási szöge (fok). 0 - "felfelé", óramutató járásával megegyező irányba növekszik
irány! :d U d szám A teknőc jelenlegi fordulási szöge :d fok lesz. 0 - "felfelé", óramutató járásával megegyező irányba növekszik
poz K Értéke a teknőc jelnlegi pozíciója listaként: [x y]
poz! :p U p számlista A teknőc a megadott :p pozícióra ugrik (a két pont közt vonalat rajzolva, ha a toll lent van).
:p két elemű: [x y]
xpoz K Értéke az aktuális X pozíció.
xpoz! :x U x szám A teknőc átugrik az X tengelyen a megadott :x koordinátára (Y tengelyen marad). A két pont között vonalat húz, ha a toll lent van.
ypoz K Értéke az aktuális Y pozíció.
ypoz! :y U y szám A teknőc átugrik az Y tengelyen a megadott :y koordinátára (X tengelyen marad). A két pont között vonalat húz, ha a toll lent van.
törölképernyo törölkép U A teknőc törli a rajzlapot, majd a kezdőpontra (0 0) ugrik (nem húz vonalat).
haza U A teknőc a kezdőpontra (0 0) ugrik (nem húz vonalat).
címke :sz U sz szöveg A teknőc kirajzolja a megadott :sz szöveget.
Kezdő- és végpozíció: bal felső sarok
címke2 :sz U sz szöveg A teknőc kirajzolja a megadott :sz szöveget.
Kezdőpozíció: bal felső sarok
Végpozíció: jobb felső sarok
lenyomat U A teknőc készít egy lenyomatot saját magáról.
tölt U A teknőc kitölti a tatrományt az aktuális töltőszínnel.
kör :d U d szám A teknőc rajzol egy kört, amelynek középpontja az aktuális pozíció, átmérője :d.
töltöttkör :d U d szám A teknőc rajzol egy az aktuális töltőszínnel kitöltött kört, amelynek középpontja az aktuális pozíció, átmérője :d.
pontméret :d U d szám A teknőc rajzol egy az aktuális tollszínnel kitöltött kört, amelynek középpontja az aktuális pozíció, átmérője :d.
ellipszis :el U el számlista A teknőc rajzol egy ellipszist a megadott lista alapján, melynek középpontja az aktuális pozíció.
:el felépítése: [a b d1 d2] (d1 és d2 opcionális).
Az ellipszis szélessége és magassága a és b.
Ha d1 és d2 meg van adva, az ellipszis a d1 szögtől a d2 szögig lesz megrajzolva.
töltöttellipszis :el U el számlista A teknőc rajzol egy az aktuális töltőszínnel kitöltött ellipszist a megadott lista alapján, melynek középpontja az aktuális pozíció.
:el felépítése: [a b d1 d2] (d1 és d2 opcionális).
Az ellipszis szélessége és magassága a és b.
Ha d1 és d2 meg van adva, az ellipszis a d1 szögtől a d2 szögig lesz megrajzolva.
sokszög :szl U szl számlista A teknőc rajzol egy az aktuális töltőszínnel kitöltött sokszöget az :szl lista alapján.
A teknőc sorban halad a lista elemein:
Páratlan sorszámú elemeknél előrehalad a megadott értékkel.
Páros sorszámú elemeknél jobbra fordul a megadott értékkel.
A végén visszaugrik a kezdőpozícióra.
Például egy 10 és 20 oldalhosszúságú téglalap listája: [10 90 20 90 10]
Toll (I, II, III, IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
toll K A toll aktuális állapota (szöveg).
Lehetséges értékei az állapotnak megfelelően: "tollatle "tollatfel "tollradír "tollváltó
tollatle tl U A toll "tollatle állapotba kerül. A teknőc rajzol mozgás közben.
tollatfel tf U A toll "tollatfel állapotba kerül. A teknőc nem rajzol mozgás közben.
tollradír trd U A toll "tollradír állapotba kerül. A teknőc kiradírozza a rajzolt pontokat, ahol halad.
tollszín tsz K Értéke a toll aktuális színe (szöveg vagy RGB-lista).
tollszín! :sz tsz! U sz szöveg vagy RGB-lista Átállítja a toll aktuális színét és töltőszínét :sz-re.
töltoszín! :sz tlsz! U sz szöveg vagy RGB-lista Átállítja a toll töltőszínét :sz-re.
tollvastagság tv K Értéke a toll aktuális vastagsága.
tollvastagság! :v tv! U v szám Átállítja a toll aktuális vastagságát :v-re.
pontszín K Értéke annak a pontnak a színe, amelyen a teknőc áll.
Ciklusok (I, II, III, IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
ismétlés :n :ul ism U n szám :ul végrehajtása :n-szer
ul U-lista
ciklus :v :int :ul cikl U v szöveg :ul többszöri végrehajtása a megadott :int intervallum alapján.
:int 2 vagy 3 elemű számlista: [kezd vég lépés] (lépés alapértéke 1).
:v a ciklusváltozó neve (:ul-ben használható), kezd-től megy vég-ig lépés-sel növekedve.
int számlista
ul U-lista
ciklusegyenként :v :l :ul ciklegy U v szöveg :ul végrehajtása :l minden elemére. Az aktuális elem :v nevű változóban van tárolva.
l lista
ul U-lista
amíg :k :ul U k kifejezés :ul folyamatos végrehajtása amíg :k értéke igaz.
ul U-lista
Elágazások (I, II, III, IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
ha :felt :ul U felt logikai :ul végrehajtása ha :felt igaz.
ul U-lista
hakülönben :felt :uli :ulh hak U felt logikai :uli végrehajtása ha :felt igaz, különben :ulh végrehajtása.
uli U-lista
ulh U-lista
elágazás :e :l U/K e bármi Az első :e-nek megfelelő eset végrehajtása/kiértékelése :l-ben.
:l felépítése:
-Minden eset egy azonosítóból (1 vagy több szó, :e megfeleltetéséhez) és egy U-listából vagy kifejezésből áll.
-Ezek :l-ben egymás után következnek.
-Az esetek után még egy U-lista vagy kifejezés a "különben" eset (opcionális).
Minta: egyjegyű prímek esetlistája: [2 [mutat "|páros prím|] 3 5 7 [mutat "|páratlan prím|] [mutat "|nem prím|]]
l lista
Több teknőc irányítása (I, II, III)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
aktív :t U t szöveg vagy szöveglista Az aktív teknőc átállítása a :t nevű teknőcre. Ha :t lista, minden elemének megfelelő teknőc aktív lesz.
kér :t :sz U/K t szöveg vagy szöveglista :ul végrehajtása vagy kiértékelése :t teknőccel vagy teknőcökkel (párhuzamosan).
ul szöveg, kifejezés, vagy U-lista
kéregyenként :t :sz U t szöveg vagy szöveglista :ul végrehajtása :t teknőccel vagy teknőcökkel (egymás után a megadott sorrendben).
ul szöveg vagy U-lista
végrehajt :sz U/K sz szöveg, kifejezés, vagy U-lista :sz végrehajtása vagy kiértékelése az aktív teknőccel vagy teknőcökkel (párhuzamosan).
egyenként :sz U sz szöveg vagy U-lista :sz végrehajtása az aktív teknőccel vagy teknőcökkel (egymás után a megadott sorrendben).
kiaktív K Értéke a jelenleg aktív teknőc neve. Ha több is van, az aktív teknőcök nevének listája.
mindenteknoc mindtek K Értéke az aktív lapon lévő teknőcök nevének listája.
Animációk (I, II, III)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
várj :n U n szám Futás szüneteltetése :n ezredmásodpercre.
alakméret K Az aktív teknőc mérete. 1=alapméret, ha X és Y nem egyezik meg, az érték egy lista: [X Y]
alakméret! :m U m szám vagy számlista Az aktív teknőc mérete. 1=alapméret, ha :m egy szám, akkor X és Y is :m lesz, ha :m lista: [X Y]
látható K Logikai érték, igaz, ha a teknőc látható, különben hamis.
látható! :l U l logikai Ha :l igaz, a teknőc látható lesz, különben el lesz rejtve.
elrejtteknoc rejttek U Teknőc elrejtése.
mutatteknoc mutattek U Teknőc láthatóvá tétele.
animáció K Logikai érték, igaz, ha a teknőc automatikus animációja be van kapcsolva, különben hamis.
animáció! :l U l logikai A teknőc automatikus animációjának bekapcsolása, ha :l igaz, különben kikapcsolása.
képkocka K Az aktuális képkockának sorszáma.
képkocka! :n U n szám Az aktuális képkocka az :n. képkocka lesz.
képkockaelem K Az aktuális képkocka aktuális elemének sorszáma.
képkockaelem! :n U n szám A teknőc alakja az aktuális képkocka :n. eleme lesz.
Vigyázat: ha az automatikus animáció be van kapcsolva, tovább fog ugrani a képkockához tartozó késleltetés után.
képkockamód K Logikai érték, igaz ha a a teknőc aktuális alakját a megadott képkocka adja, hamis ha a teknőc irány befolyásolja.
képkockamód! :l U l logikai A teknőc képkockamódjának átállítása:
igaz, ha a a teknőc aktuális alakját a megadott képkocka adja, hamis ha a teknőc irány befolyásolja.
Változók (III, IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
lokálisérték :v :e lokért U v szöveg :v lokális változó beállítása :e értékre.
e bármi
globálisváltoztó :v :e globvál U v szöveg :v globális változó beállítása :e értékre.
e bármi
növel :v :n U v szöveg :v globális vagy lokális változó növelése :n-nel. (:n alapértelmezett értéke 1.)
n szám (opcionális)
csökkent :v :n U v szöveg :v globális vagy lokális változó csökkentése :n-nel. (:n alapértelmezett értéke 1.)
n szám (opcionális)
vanilyen? :v K v szöveg Logikai érték, igaz, ha létezik :v nevű lokális vagy globális változó, különben hamis.
értéke :v K v szöveg :v lokális vagy globális változó értéke (lecserélhető a kettőspontos kifejezésre)
Lista- és szövegkezelés (IV)
Név Rövidítés Típus Paraméterek Leírás
Név Típus
szó :sz1 :sz2 K sz1 szöveg :sz1 és :sz2 összefűzése.
sz2 szöveg
mondat :l1 :l2 K l1 lista :l1 és :l2 összefűzése.
l2 lista
lista :e1 :e2 K e1 bármi Értéke egy kételemű lista, melynek első eleme :e1, második eleme :e2.
e2 bármi
elsonek :e :l K e bármi :e hozzáfűzése :l-hez első elemként.
l lista
utolsónak :e :l K e bármi :e hozzáfűzése :l-hez utolsó elemként.
l lista
elsonélküli :l en K l lista Lista :l elemeivel az elsőt (ha létezik) kihagyva.
utolsónélküli :l un K l lista Lista :l elemeivel az utolsót (ha létezik) kihagyva.
elemsorszámnélküli :n :l elemsn K n szám Lista :l elemeivel az :n. elemet kihagyva.
l lista
elemnélküli :e :l elemn K e bármi Lista :l értékeivel :e minden előfordulását kihagyva.
l lista
elemtol :e :l K e bármi Lista :l értékeivel :e első előfordulásától kezdve. Ha :e nincs :l-ben, az érték üres lista.
l lista
csere :k :l :e K k szám vagy számlista Lista :l értékeivel, :k. elem kicserélve :e-re. :k lehet intervallum: [kezd darab].
Ilyenkor :e is lista, kezd elemszámú elem :e 1. elemére lesz lecserélve, kezd+1 a 2. elemre, stb.
l lista
e bármi
megfordít :l K l lista Lista :l értékeivel fordított sorrendben.
összekever :l K l lista Lista :l értékeivel véletlenszerű sorrendben.
! :l K l lista Lista :l értékeivel, a változó kifejezések kiértékelésével. Pl.: ! [1 :a 3] -> [1 2 3] (ha :a értéke 2)
elemszám :l K l lista Az :l lista elemszáma.
elso :l K l lista :l lista első eleme
utolsó :l K l lista :l lista utolsó eleme
elem :k :l K k szám vagy számlista :l lista :k. eleme. :k lehet intervallum: [kezd darab]. Ilyenkor az érték :l megfelelő részlistája.
l lista
kiválaszt :l K l lista :l lista egy véletlenszerű eleme
Műveletek
Infix műveletek: + - * / < <= <> = > >=
Név Rövidítés Típus Paraméterek Leírás
Név Típus
és :a :b K a logikai Logikai művelet, értéke igaz, ha :a és :b is igaz, különben hamis.
b logikai
vagy :a :b K a logikai Logikai művelet, értéke igaz, ha :a és :b közül legalább az egyik igaz, különben hamis.
b logikai
nem :l K l logikai Logikai művelet, értéke :l negáltja (igaznak hamis, hamisnak igaz).
egyenlo? :a :b = (infix) K a bármi Logikai érték, igaz, ha :a és :b egyenlő, különben hamis.
b bármi
nagyobb? :a :b > (infix) K a szám vagy szöveg Logikai érték, igaz, ha :a nagyobb, mint :b, különben hamis.
Ha valamelyik paraméter szöveg, az összehasonlított értékek a paraméterek első karaktereinek ASCII-kódjai.
b szám vagy szöveg
kisebb? :a :b < (infix) K a szám vagy szöveg Logikai érték, igaz, ha :a kisebb, mint :b, különben hamis.
Ha valamelyik paraméter szöveg, az összehasonlított értékek a paraméterek első karaktereinek ASCII-kódjai.
b szám vagy szöveg
összeg :a :b + (infix) K a szám :a és :b összege.
b szám
különbség :a :b - (infix) K a szám :a és :b különbsége.
b szám
szorzat :a :b * (infix) K a szám :a és :b szorzata.
b szám
hányados :a :b / (infix) K a szám :a és :b hányadosa.
b szám
egészhányados :a :b eh K a szám :a és :b egészosztásának hányadosa.
b szám
maradék :a :b mod K a szám :a és :b egészosztásának maradéka. Előjele megegyezik :a előjelével.
b szám
egészrész :n int K n szám :n egészrésze.
kerekít :n K n szám :n egészre kerekítve.
absz :n K n szám :n abszolútértéke.
gyök :n K n szám :n négyzetgyöke.
hatvány :n K n szám Természetes alapú hatvány értéke (e:n).
ln :n K n szám :n természetes alapú (e alapú) logaritmusa.
sin :a K a szám :a szög (fok) szinusza.
cos :a K a szám :a szög (fok) koszinusza.
tan :a tg K a szám :a szög (fok) tangense. Nincs definiálva 90 + k*180-ra (k egész szám).
arkusztangens :t arctg K t szám Az a szög (fokban), amelynek tangense :t. Értékkészlete: [-90, 90].
Egyéb
Név Rövidítés Típus Paraméterek Leírás
Név Típus
mutat :sz U sz szöveg :sz szöveg kiírása a kimenetre.
eredmény :e U e bármi :e visszaadása visszatérési értékként (az ezutáni utasítások nem lesznek végrehajtva).
stop U A futó eljárás megállítása.
véletlenszám :n vszám K n szám Értéke egy véletlenszerű egész szám 0 és :n-1 között, ha :n pozitív, :n+1 és 0 között, ha :n negatív.