II. Adatszerkezetek: a sor

A sor adatszerkezet jellemzõi:

ha tehát 3, 2, 4 számokat tesszük a sorba, akkor 3, 2, 4 sorrendben kapjuk vissza. Sort használunk pl. a várakozási sorok megvalósításánál, tehát amikor az elsõnek érkezõ kerül sorra elõször (ilyen a nyomtató várakozási sora, vagyis puffere).

A sor megvalósítása kicsit nehezebb a vereménél. Ha tömböt használunk, szükség van egy ELEJE változóra, mely a legelsõ üres helyre mutat, és egy VEGE változóra, amely a legelõször berakott elem helyét mutatja. Új elemet az ELEJE helyre kell berakni, kivenni pedig a VEGE által mutatott elemet kell. Ha beteszünk, majd kiveszünk egy elemet, ELEJE és VEGE értéke is eggyel nõ, így az elemek a tömbben felfelé fognak vándorolni, s elõbb-utóbb kifutnak belõle. Hajtsuk össze a tömb elejét és végét: ha pl. VEGE túlmutat a tömbön, legyen értéke ismét 1. Így az elemek a tömbben körben haladnak. Célszerû egy DB változót is bevezetni, melyben számoljuk a tömb elemeit (ez ELEJE és VEGE segítségével is kiszámítható, de így egyszerûbb). A sor eljárásai:

1. feladat: írd meg a sor eljárásait! Teszteld programmal.

2. feladat: írj közlekedésilámpa-szimulátort! A program fõ része egy ciklus. Minden lépésben 20% eséllyel érkezik egy autó (pl. egy véletlen karakter), amely bekerül a sorba. A lámpa az idõ 20%-ában zöld (pl. 20 lépésben zöld, majd 80 lépésben piros). Ha a lámpa zöld, és a sor nem üres, egy autó kikerül a sorból. A program írja ki lépésenként a várakozó autók számát és a lámpa állapotát! Van olyan autó, amelyik csak a második lámpánál jut át?

Következõ fejezet
Elõzõ fejezet
Tartalomjegyzék
Honlap