|
"Új grammatika|automata" ablak

2. ábra: “Új grammatika/automata” beviteli ablak
A 2. ábrán látható felületen lehetőségünk nyílik új grammatika vagy automata bevitelére.
Elérés
Az alkalmazás elindítása után az alapfelületen (1. ábra) rögtön megjelenik ez az ablak. Ezt az ablakot az alapfelület menürendszerében található Fájl/Új megnyomásával is előhívhatjuk.
Grammatika megadása
A grammatika bevitelére háromféle lehetőségünk van:
- grammatika varázsló
- manuális bevitel
- fájlból megnyitás
Grammatika Varázsló

3. ábra: grammatika varázsló
-
Az 1. pontban adjuk meg a nyelvtani jeleket, majd nyomjunk ENTER-t.
Több nyelvtani jel megadása esetén elég lenyomni a nyelvtani jelnek megfelelő betűt a billentyűzeten, mivel a program automatikusan kiteszi a vessző(ke)t.
-
A 2. pontban adjuk meg a produkciós szabályokat. Ahol nem adunk meg levezetést, ott azt a program automatikusan ε-nak tekinti. Az ε jelölésére
a kényelmes használat érdekében a $ szimbólumot használjuk. Miután megadtunk egy lehetséges levezetést, elég SPACE-t nyomnunk és máris látjuk, hogy az adott mező kiegészül a “<szóköz>|<szóköz>“-zel. A terminális jeleket a produkciós szabályokból szűri ki az alkalmazás, tehát bevitelükkel nekünk nem kell foglalkoz-nunk.
-
A “Tovább!” gombra kattintva (3. pont) megkapjuk a kész grammatikát.
A program ezt a jobboldalon (4. pont) meg is jeleníti.
-
Amennyiben számunkra megfelelő a grammatika, a “Tovább az algoritmusokhoz!” gombra kattintva megnyithatjuk az algoritmusokat lejátszó ablakot.
Ez attól függően, hogy milyen típusú a nyelvünk, lehet a 8. ábrán látható vagy
a 10. ábrán látható ablak.
Manuális (Grammatika)

4. ábra: grammatika manuális megadása
-
Az 1.pontban adjuk meg a szabályrendszert. Az ε jelölésére a kényelmes használat érdekében a $ szimbólumot használjuk. Miután megadtuk, hogy mely nyelvtani jelhez (ez a sor elején szereplő nagy betű) szeretnénk szabályt megadni, elég
a “–“ jelet lenyomnunk a billentyűzeten, és a program máris kiegészíti
a nyíl maradék “>“ jelével, és egy szóközt tesz utána az áttekinthetőség kedvéért.
-
A “Tovább!” gombra kattintva (2. pont) megkapjuk a kész grammatikát.
A program ezt a jobboldalon (3. pont) meg is jeleníti.
-
Amennyiben számunkra megfelelő a grammatika, a “Tovább az algoritmusokhoz!” gombra kattintva megnyithatjuk az algoritmusokat lejátszó ablakot.
Ez attól függően, hogy milyen típusú a nyelvünk, lehet a 8. ábrán látható vagy
a 10. ábrán látható ablak.
Megnyitás

5. ábra: grammatika megnyitása fájlból
-
A “Nyelv megnyitása” (1. pont) gombra kattintva meg kell nyitni a beolvasni kívánt fájlt.
-
A 2. pontban még módosíthatjuk a beolvasott fájlt. Az ε jelölésére a kényelmes használat érdekében a $ szimbólumot használjuk. Itt ugyanazok a funkciók segítik
a bevitelt, mint a Manuális bevitel ablaknál.
-
A “Tovább!” gombra kattintva (3. pont) megkapjuk a grammatikát. A program ezt a jobboldalon (4. pont) meg is jeleníti.
-
Amennyiben számunkra megfelelő a grammatika, a “Tovább az algoritmusokhoz!” gombra kattintva megnyithatjuk az algoritmusokat lejátszó ablakot.
Ez attól függően, hogy milyen típusú a nyelvünk, lehet a 8. ábrán látható vagy
a 10. ábrán látható ablak
Automata megadása
Az automata bevitelére kétféle lehetőségünk van: az automata varázsló használata és
a fájlból történő megnyitás.
Automata Varázsló

6. ábra: automata varázsló
-
Az 1. pontban adjuk meg a terminális jeleket. Elég a terminálisoknak megfelelő betűket lenyomni a billentyűzeten, mert a program automatikus kiteszi a vessző(ke)t.
-
A 2. pontban választhatunk az egyszerű és a bonyolult automata megadása között. Az egyszerű automata nyelvtani jelei (állapotai) között csak nagybetűk szerepelhetnek (például: S,A,B). A bonyolult automata nyelvtani jelei között számok és az aposztróf jel is szerepelhet egy meghatározott formában. Ezáltal nyelvtani jel halmazokat tudunk megadni vele (például: {S’, X1}).
-
A 3. pontban adjuk meg a nyelvtani jeleket/állapotokat/állapot-halmazokat. Amennyiben egyszerű automatát kívánunk bevinni, úgy a könnyebb bevitel érdekében az automata állapot-halmazait jelölő {} jeleket a program kiteszi helyettünk. Továbbá elegendő az állapotnak megfelelő betűt beírni, mivel
a program kiteszi helyettünk a vessző(ke)t. Ellenkező esetben nekünk kell kitenni a {} és a vessző jeleket.
-
A 4. pontban tudjuk megadni az átmeneteket. Továbbá itt kell megadni, hogy mely állapotok legyenek a végállapotok, illetve melyik állapot legyen
a kezdőállapot. Mivel egy automata állapot-halmazzal van definiálva, ezért
az első oszlopban {} között szerepelnek a megadott állapotok.
- Ha bonyolult automatát adtunk meg korábban, akkor az átmenetek között is {} jelek között kell megadnunk egy állapotot.
- Ha egyszerű automatát adtunk meg, elég beírni a {} között szereplő állapotok nevét. A program a {} jeleket kiteszi helyettünk. Továbbá elegendő az állapotnak megfelelő betűt beírni, mivel a program kiteszi helyettünk a vessző(ke)t.
-
A “Tovább!” gombra kattintva (5. pont) megkapjuk az automatát. A program ezt a jobboldalon (6. pont) meg is jeleníti.
-
Amennyiben számunkra megfelelő az automata, a “Tovább az algoritmusokhoz!” gombra kattintva megnyithatjuk az algoritmusokat lejátszó ablakot.
Megnyitás

7. ábra: automata megnyitása fájlból
-
Az “Automata megnyitása” (1. pont) gombra kattintva nyissuk meg a beolvasni kívánt fájlt.
-
A 2. pontban tudjuk módosítani a terminális jelek listáját. Elég a termináli-soknak megfelelő betűket lenyomni a billentyűzeten, mert a program automatikus kiteszi
a vessző(ke)t. A módosítás akkor lép életbe, ha lenyomjunk az ENTER-t.
Ekkor viszont újra meg kell adnunk az 4. pontban szereplő információkat.
-
A 3. pontban tudjuk módosítani a nyelvtani jelek/állapotok/állapot-halmazok listáját. Amennyiben ENTER-t nyomunk, életbe lép a módosítás. Ekkor azonban újra meg kell adnunk a 4. pontban szereplő információkat. A megnyitás funkcióban csak bonyolult automatát (nyelvtani jelei között számok és az aposztróf jel is szerepelhet, továbbá állapot-halmazokat tudunk vele definiálni.
Például: {S’, X1} ) lehet megadni.
-
A 4. pontban tudjuk megadni az átmeneteket. Továbbá itt kell megadni, hogy mely állapotok legyenek a végállapotok, illetve melyik állapot legyen
a kezdőállapot. Mivel ebben az ablakban csak bonyolult automatát tudunk megadni, ezért az átmenetek között is a {} jelek között kell megadnunk
egy állapotot.
-
A “Tovább!” gombra kattintva (5. pont) megkapjuk az automatát. A program ezt a jobboldalon (6. pont) meg is jeleníti.
-
Amennyiben számunkra megfelelő az automata, a “Tovább az algoritmusokhoz!” gombra kattintva megnyithatjuk az algoritmusokat lejátszó ablakot.
|