Listák, Vermek és Várakozási Sorok
Várakozási Sor Def: Egy sajátos lista, amelybe az elemek a lista egyik végén (sor vége) szúrhatók be és a másik végén (sor eleje) törölhetőek. Ahhoz, hogy könnyen lehessen kezelni egy várakozási sort (például új elemet beszúrni vagy törölni) ismernünk kell a sor elejét és végét A várakozási sor a hozzáférési helye következtében egy FIFO (first in firs out) adatszerkezet.
Várakozási sor : FIFO (first in firs out) Elsőnek megy 5 Elsőnek jön 6 7 Utolsóként megy 9 Utolsónak jön 23
A várakozási sorokkal végezhető műveletek Létrehozás Várakozási sor elemeinek kiírása Egy új elem beszúrása a várakozási sorba Egy elem törlése a várakozási sorból
Létrehozás Write(‘n=’); Readln(n); elso:=1; utolso:=0; Meg kell adnunk a verem elemszámát és beolvasni az elemeket vlamint be kell állítanunk az első és utolsó elemekre vonatkozó hivatkozásokat Write(‘n=’); Readln(n); elso:=1; utolso:=0; While utolso < n do Begin inc(utolso) readln(s[utolso]); End;
Várakozási sor elemeinek kiírása Végigjárjuk a várakozási sort az első elemtől az utolsóig ls rendre kiírjuk az elemeket While elso<=utolso do Begin writeln(s[elso]); inc(elso); End;
Egy új elem beszúrása a várakozási sorba Az új elemet a sor végére kell beszúrni Write(‘Uj elem erteke: ’); Readln(ertek); inc(utolso) s[utolso]):=ertek;
Egy elem törlése a várakozási sorból várakozási sorból mindíg csak az első elem törölhető törlés előtt ellenőrizni kell, hogy a sor nem-e üres, mivel ebben az esetben nincs mit törölni if elso <= utolso then inc(elso);
Feladat: Írjuk progrmot amely egy kávézót karbantart. A program tartalmazzon egy menüt amelyből ki lehet választani a következő műveleteket: várakozási sor elemeinek kiírása egy új elem beszúrása a várakozási sorba egy elem törlése a várakozási sorból kiléps