Verwaltung einer Warteschlange

Verwaltung einer Wartschlange mit der Klasse t_Schlange auf der Basis einer statischen Struktur

CLASS  t_Schlange

Funktion: CLASS t_Schlange verwaltet beliebige Datenobjekte, deren Typ importiert wird in einer Schlange mit maximal 50 Elementen.

Erstellt für: Beliebige Aufgaben, z. B. Warteschlangen, Terminverwaltung, Abarbeiten sequentieller Prozesse, Verwaltung von FIFO-Speichern.

Spezifikation der bereitgestellten Methoden:

1. CONSTRUCTOR t_Schlange.create;

Effekt: t_Schlange wird initialisiert.

Voraussetzung der folgenden Methoden: Die Schlange ist initialisiert.

2. PROPERTY Anzahl: integer read laenge;

Effekt: Die Anzahl der Schlangenelemente wird bereitgestellt.

3. PROCEDURE t_schlange.anhaengen(e:t_Inhalt);

Effekt: Das neue Element ist an das Ende der Schlange angehängt. Die Schlangenlänge ist um enis erhöht

Beachte: Ist die Schlange voll, passiert nichts.

4. FUNCTION t_Schlange.leer: boolean;

Effekt: Liefert „true“, wenn die Schlange leer ist, ansonsten „false“.

5. FUNCTION t_Schlange.Kopf: t_Inhalt;

Effekt: Liefert das erste Element der Schlange.

Beachte: Die Schlange wird nicht verändert..

6. PROCEDURE t_Schlange.Kopfab;

Effekt: Entfernt das erste Element der Schlange.

Beachte: Wirkt nicht auf leere Schlangen.

7. PROCEDURE t_Schlange.Liste_fuellen (Liste: TListBox);

Effekt: Visualisiert die Schlange in einer ListBox.

Beachte: Die ListBox muss auf der Oberfläche eingerichtet sein.

UNIT Schlauni;

INTERFACE

uses StdCtrls;

TYPE t_Inhalt  = string;

     t_Schlange = class(TObject)

        protected

           Inhalt : ARRAY[1..50] OF t_Inhalt;

           Laenge : integer;

        public

           //Schlangenoperationen

           CONSTRUCTOR create;

           PROPERTY Anzahl:integer read laenge;

           PROCEDURE anhaengen(e : t_Inhalt);

           FUNCTION leer: boolean;

           FUNCTION kopf : t_Inhalt;

           PROCEDURE kopfab ;

       // Prozedur für die Visualisierung in einer ListBox

           PROCEDURE Liste_fuellen(liste:TListbox);

        end;

IMPLEMENTATION

constructor t_schlange.create;

BEGIN

  inherited create; Laenge := 0;

END;

END.

 

 

Zurück zur Beispielübersicht