Peter Lorenz English smaller fonts Simulation und Animation

4.6. Suchen, Zählen und Klassifizieren

In den vorigen Abschnitten dieses Kapitels sind Modellelementklassen und Anweisungen eingeführt und erklärt worden, die man gut zur Konstruktion von Bedienungsnetzen verschiedener Struktur benutzen kann. In diesem Abschnitt kommt Neues hinzu, das man

benutzen kann.

Skalare sind Speicherplätze für numerische Werte. Sie entsprechen den Variablen klassischer Programmiersprachen und werden im GPSS/H seit der Einführung des Ampervariablen-Konzeptes kaum noch benötigt.

Matrizen sind zweidimensionale Felder derartiger Werte. Sie sind oft deshalb zweckmäßig, weil das Ampervariablen-Konzept nur eindimensionale Felder zuläßt.

Tabellen sind Modellelemente, die der Klassifikation von Beobachtungswerten sowie der Berechnung von Häufigkeiten, Mittelwerten und Standardabweichungen dienen.

COUNT ist ein Block, mit dem die Anzahl von Modellelementen mit gegebenen Zuständen gezählt werden kann.

SELECT ist ein Block, mit dem man gezielt nach einem Modellelement suchen kann, das eine gegebene Bedingung erfüllt oder das einen extremalen Attributwert besitzt.

LOOP ist ein Block, der den zyklischen Durchlauf von Transaktionen durch eine Folge von Blöcken organisiert.

SkalareTop

Funktion
Anweisungen
Numerische Standardattribute
Programmbeispiel

Skalar (engl. Savevalue) ist ein übergeordneter Begriff für vier Klassen von Modellelementen: Byte-, Halbwort-, Vollwort- und Gleitkommaskalare.

Funktion

Skalare sind globale skalare numerische Modellvariable. Sie dienen der Speicherung eines allgemein zugänglichen numerischen Wertes. Die vier Modellelementklassen unterscheiden sich bezüglich des Wertebereichs für die zu speichernden Werte.
BezeichnungWertebereich
Byteskalar -27 . . . 27 -1 (INTEGER*1)
Halbwortskalar -215 . . . 215-1 (INTEGER*2)
Vollwortskalar -231 . . . 231-1 (INTEGER*4)
Gleitkommaskalar Gleitkommazahl mit doppelter Genauigkeit (REAL*8)

Es gibt keine Zeichenkettenskalare. Zum Speichern und zur Verarbeitung von Zeichenketten eignen sich die Ampervariablentypen CHAR* und VCHAR*. Alle Skalare haben den vordefinierten Anfangswert Null.

Wie alle Modellelemente (außer Transaktionen) sind sie durch einen Namen und eine Nummer identifizierbar. Nummern und Namen werden in jeder Klasse gesondert verwaltet: Es kann z.B. ein Halbwortskalar und ein Vollwortskalar mit gleichem Namen geben.

Skalare brauchen nicht gesondert definiert zu werden. Der Compiler registriert sie bei ihrem ersten Auftauchen im Quelltext und wendet einen internen Algorithmus der Zuordnung von Nummern und Namen an.

AnweisungenTop Paragraph

Man nutzt die INITIAL-Steueranweisung für Wertzuweisungen vor und nach der Blockverarbeitung. Der SAVEVALUE-Block wird immer dann wirksam, wenn ihn eine Transaktion betritt. Er dient der Wertzuweisung während der Blockverarbeitung.

INITIAL
ist eine Steueranweisung, die zur Zuweisung von Anfangswerten an Skalare benutzt werden kann.
INITIAL XF$JOE,23/XL$TIME,2.4
weist dem Vollwortskalar JOE den Wert 23 und dem Gleitkommaskalar TIME den Wert 2.4 zu.
INITIAL XH3-XH10,222/XH$JIM-XH$JOE,RN1
weist den Halbwortskalaren mit den Nummern 3 bis 10 den Wert 222 zu. Alle Halbwortskalare, deren Nummern zwischen der Nummer des Halbwortskalars JIM und des Halbwortskalars JOE liegen, erhalten denselben, vom Zufallszahlengenerator RN1 gelieferten Wert, eine Zahl zwischen 0 und 999, zugewiesen.
SAVEVALUE
ist ein Block zur Wertzuweisung an ein Skalar. Die Wertzuweisung erfolgt immer dann, wenn eine Transaktion den SAVEVALUE-Block betritt.
A pxpr[+-] Nummer oder Name des Skalars, dessen Wert zu verändern ist. Wenn die Erweiterung + oder - angegeben ist, wird der Wert addiert oder subtrahiert.
rng[+-] Bereich von Skalaren, deren Werte zu verändern sind
B xpr Zuzuweisender, zu addierender oder zu subtrahierender Wert
C XB, XH, XF,XL Typ des Skalars

Numerische StandardattributeTop Paragraph

Xj | XFj Wert des Vollwortskalars j
XHj Wert des Halbwortskalars j
XBj Wert des Byteskalars j
XLj Wert des Gleitkommaskalars j

ProgrammbeispielTop Paragraph


Es ist zu empfehlen, dieses Beispiel auch im Hinblick auf die intern getroffene Zuordnung von Nummern und Namen genau zu betrachten und nach Wunsch zu erweitern.

MatrizenTop

Funktion
Anweisungen
MSAVEVALUE
Numerische Standardattribute
Programmbeispiel

Matrix ist ein übergeordneter Begriff für vier Klassen von Modellelementen: Byte-, Halbwort-, Vollwort- und Gleitkommamatrizen.

Funktion

Matrizen sind zweidimensionale Felder globaler numerischer Modellvariablen. Sie dienen der Speicherung von Werten, die durch zwei Indizes gekennzeichnet sind und als Matrix geschrieben werden können. Die vier Modellelementklassen unterscheiden sich bezüglich des Wertebereichs für die zu speichernden Werte.
Bezeichnung Wertebereich
Bytematrix -27 . . . 27 -1 (INTEGER*1)
Halbwortmatrix -215 . . . 215-1 (INTEGER*2)
Vollwortmatrix -231 . . . 231-1 (INTEGER*4)
Gleitkommamatrix Gleitkommazahl mit doppelter Genauigkeit (REAL*8)

Es gibt keine Zeichenkettenmatrizen. Zum Speichern und zur Verarbeitung von Zeichenkettenfeldern eignen sich indizierte Ampervariablentypen CHAR*(&I) und VCHAR*(&I). Eine Matrix aus n Zeilen und m Spalten hat n x m Matrixelemente. Alle Matrixelemente haben den vordefinierten Anfangswert Null. Wie alle Modellelemente (außer Transaktionen) sind Matrizen durch einen Namen und eine Nummer identifizierbar. Nummern und Namen werden in jeder Klasse gesondert verwaltet: Es kann z.B. eine Halbwortmatrix und eine Gleitkommamatrix mit gleichem Namen geben.

Matrizen müssen definiert werden. Dazu dient die Steueranweisung MATRIX.

AnweisungenTop Paragraph

Matrizen werden durch die Steueranweisung MATRIX definiert. Anfangswerte können durch INITIAL zugewiesen werden. Während der Blockverarbeitung dient der MSAVEVALUE-Block der Wertzuweisung an Matrizen.
MATRIX
ist eine Anweisung zur Definition einer Matrix. Ihre Syntaxdarstellung lautet
name MATRIX type,nrows,ncols
nrows ist ein Ausdruck, dessen Wert die Anzahl der Zeilen bestimmt.
ncols ist ein Ausdruck, dessen Wert die Anzahl der Spalten bestimmt.
RNMX MATRIX MH,20,8 HALBWORTMATRIX MIT 20 ZEILEN UND 8 SPALTEN
INITIAL
ist eine Steueranweisung, die zur Zuweisung von Anfangswerten an Matrixelemente benutzt werden kann.
INITIAL MH$EXPL(1,2),3
weist dem Matrixelement (1,2) der Halbwortmatrix EXPL den Wert 3 zu.
INITIAL ML$EXPL(2-3,1-4),1.111
weist den Matrixelementen des angegebenen Indexbereiches den Wert 1.111 zu.
MSAVEVALUE
ist ein Block zur Wertzuweisung an ein Matrixelement. Die Wertzuweisung erfolgt immer dann, wenn eine Transaktion den MSAVEVALUE-Block betritt.
A pxpr[+-] Nummer oder Name der Matrix, deren Wert zu verändern ist. Wenn die Erweiterung + oder - angegeben ist, wird der Wert addiert oder subtrahiert.
rng[+-] Bereich von Matrizen, deren Werte zu verändern sind
B pxpr Matrixzeilenindex zur Bestimmung des Elements, dessen Wert zu verändern ist.
rng Bereich von Zeilenindizes zur Bestimmung der Elemente, deren Werte zu verändern sind.
C pxpr Matrixspaltenindex zur Bestimmung des Elements, dessen Wert zu verändern ist.
rng Bereich von Spaltenindizes zur Bestimmung der Elemente, deren Werte zu verändern sind.
D xpr Zuzuweisender, zu addierender oder zu subtrahierender Wert
E MB, MH, MX, ML Typ der Matrix
MSAVEVALUE 3,4,5,6,MH
weist dem Element der Halbwortmatrix 3 mit Zeilennummer 4 und Spaltennummer 5 den Wert 6 zu.
MSAVEVALUE 1-3,4-6,2-7,8,MX
weist allen Elementen der Vollwortmatrizen 1 bis 3 mit den Zeilennummern 4 bis 6 und den Spaltennummern 2 bis 7 den Wert 8 zu.

Numerische StandardattributeTop Paragraph

MXj(r,c) Wert des Vollwortmatrixelements der Matrix j mit Zeilen- und Spaltennummer r,c
MHj(r,c) Wert des Halbwortmatrixelements der Matrix j mit Zeilen- und Spaltennummer r,c
MBj(r,c) Wert des Bytematrixelements der Matrix j mit Zeilen- und Spaltennummer r,c
MLj(r,c) Wert des Gleitkommamatrixelements der Matrix j mit Zeilen- und Spaltennummer r,c
Für die Referenzierung der Matrix-Standardattribute gelten folgende Besonderheiten:
  1. Der Index oder die Nummer der Matrix kann als Konstante dem Symbolnamen angehängt werden.
    MH3(1,2)
    bezieht sich auf die Halbwortmatrix mit der Nummer 3.
  2. Der symbolische Name kann nach einem $-Symbol angehängt werden:
    MH$JOE(2,7)
    bezieht sich auf die Halbwortmatrix mit dem Namen JOE und das Matrixelement in Zeile 2 und Spalte 7.
  3. Der Index kann an erster Stelle in der Indexliste angeführt werden, so dass der Zeilen- und Spaltenindex an die zweite und dritte Stelle verschoben werden.
    MH(JOE,2,7)
    bezeichnet denselben Wert wie im vorigen Beispiel.

ProgrammbeispielTop Paragraph


Das obige Programmbeispiel wird zum Experimentieren empfohlen. Was geschieht bei Wertebereichsüberschreitungen? Wie reagiert GPSS/H, wenn man einem ganzzahligen Matrixelement einen Gleitkommawert zuweist?

TabellenTop

Funktion
Anweisungen Numerische Standardattribute
Häufigkeitstafel für Zufallszahlen
Häufigkeitstafel für Laufzeiten

Tabellen heißt eine Modellelementklasse zur statistischen Aufbereitung beobachteter Daten.

Funktion

Eine Tabelle (Table) dient der Sammlung von Werten einer zu beobachtenden Größe und der statistischen Aufbereitung dieser Beobachtungswerte. Bei der Ausgabe einer Tabelle werden Mittelwert, Standardabweichung sowie relative und absolute Häufigkeiten von definierten Klassen angezeigt.
Tabellen werden durch TABLE- und QTABLE-Anweisungen definiert. Jedesmal, wenn eine Transaktion einen TABULATE-Block betritt, wird ein neuer Wert in der Tabelle erfaßt und in die Berechnung der statistischen Resultatgrößen einbezogen.

AnweisungenTop Paragraph

TABLE
ist eine Steueranweisung zur Definition einer Tabelle. Mit dieser Anweisung werden
- ihr ein Name oder eine Nummer zugewiesen,
- ein Argument, die zu beobachtende Größe, spezifiziert und
- die Klasseneinteilung für die Beobachtungswerte angegeben.
Syntax
number | name TABLE A,B,C,D
Operanden
A
xpr[-] Ausdruck, dessen aktueller Wert in der Tabelle zu erfassen ist, i.A. ein NSA. Folgt ein Minuszeichen, so wird die Differenz zum vorigen Wert erfaßt
IA Inter-Arrival-Modus: Die Zeitdifferenz des aktuellen Wertes der absoluten Zeit AC1 zum Zeitpunkt des vorhergehenden Eintrages wird berechnet und in der Tabelle erfaßt
RT Arrival-Rate-Modus: Zählung der Ankünfte von Transaktionen während des durch den Operanden E bestimmten Zeitintervalls.
B Obere Grenze der ersten Häufigkeitsklasse. In diese Klasse fallen alle Werte von - unendlich bis zum Wert von B
C Konstante Klassenbreite für alle Klassen außer der ersten und der letzten
[X]D Anzahl der Häufigkeitsklassen; bei Präfix X gewichtete Erfassung
E Zeitintervall, nur beim Eintrag RT in B
Aufzeichnung eines Wertes
  1. Ist der aufzuzeichnende Wert kleiner oder gleich der oberen Grenze der niedrigsten Häufigkeitsklasse, wird er in dieser Klasse gespeichert.
  2. Ist er größer als die obere Grenze der vorletzten Häufigkeitsklasse, wird er in der letzten gespeichert, die nach oben unbeschränkt ist.
  3. Alle anderen Werte werden in den dazwischenliegenden Klassen gespeichert. In jeder Klasse stehen die Werte, die kleiner oder gleich der jeweiligen Obergrenze und größer als die jeweilige Untergrenze sind.
Bei Aufzeichnung eines Wertes wird der Zähler der entsprechenen Häufigkeitsklasse um 1 erhöht. Außerdem werden die Summe der Werte, die Summe der quadrierten Werte und die Gesamtzahl der aufgezeichneten Werte ermittelt.
Beispiele
LZEIT TABLE M1,5,5,12
Laufzeiterfassung in Klassen der Breite 5 von 0 bis 50
DBUNK TABLE S(BUNK)-,-1000,100,22
Zu- und Abgangsmengen in einem Speicher in 20 regulären und 2 Restklassen
QTABLE
ist eine Steueranweisung, die eine Tabelle zur Aufzeichnung von Aufenthaltszeiten in einer Warteschlange erzeugt. Sie stimmt weitgehend mit der Anweisung TABLE überein. Es gibt zwei Unterschiede:
  1. Als Operand A ist der Name oder die Nummer einer Warteschlange anzugeben.
  2. Jedesmal, wenn eine Transaktion einen entsprechenden DEPART-Block betritt, erfolgt ein Eintrag in die Tabelle.
TABULATE
ist ein Block, der einen Eintrag in eine Tabelle veranlaßt. Er hat maximal zwei Operanden.
ANummer oder Name der Tabelle
[B] Gewicht des Eintrags
TABULATE DBUNK
bewirkt einen Eintrag (Speicherbestandsdifferenz) in die Tabelle DBUNK.

Numerische StandardattributeTop Paragraph

TBj Ungewogener Mittelwert der Einträge in Tabelle j
TBWj Gewogener Mittelwert der Einträge in Tabelle j
TCj Ungewogene Anzahl der Einträge in Tabelle j
TCWj Gewogene Anzahl der Einträge in Tabelle j
TDj Ungewogene Standardabweichung der Einträge in Tabelle j
TDWj Gewogene Standardabweichung der Einträge in Tabelle j

Bedauerlicherweise gibt es bisher keine Standardattribute für die absoluten und relativen Klassenhäufigkeiten.

Programmbeispiel 1: Häufigkeitstafel für Zufallszahlen Top Paragraph


SLX

Es ist zu empfehlen, dieses Programm zu starten und die in der Standardausgabe erscheinenden Tabellen zu vergleichen!

Programmbeispiel 2: Häufigkeitstafel für LaufzeitenTop Paragraph


Auch hier werden Experimente mit verschiedenen Operanden der TABLE-Anweisungen empfohlen. Insbesondere ist zu empfehlen, die erzeugte Resultatausgabe genau zu betrachten und zu versuchen, jeden der darin aufgezeichneten Werte zu interpretieren.

SLX

Der nun einzuführende COUNT-Block dient der Zählung von Elementen einer Klasse, die eine Zustandsbedingung erfüllen.

COUNT Top

Funktion
Beschreibung
Beispiele
Zwei Würfel
Bedarfsabhängige Kassenöffnung

FunktionTop Paragraph

COUNT
ist ein Block, der die Zählung von Modellelementen veranlaßt, die eine Bedingung erfüllen. Er wird dann aktiviert, wenn ihn eine Transaktion betritt. Mit diesem Block kann man zum Beispiel zählen, wieviele Einrichtungen aus einer Serie vorrangig belegt sind oder wieviele Schalter geschlossen sind.

Unter einer Serie von Elementen versteht man hier eine Folge von Elementen mit aufsteigender, lückenloser Numerierung, z.B. alle Speicher mit den Nummern von 2 bis 7. Zur Verwendung des COUNT-Blockes benötigt man dann, wenn man mit Namen von Objekten arbeitet, Kenntnisse über den Zuordnungsmechanismus von Namen und Nummern. Diese Zuordnung geschieht mit der EQU-Anweisung oder mit Funktionen vom Typ S.

BeschreibungTop Paragraph

COUNT ist ein Block, bei welchem fünf Operanden belegt sein können. Die folgende Tabelle beschreibt die Wirkung von COUNT in Abhängigkeit von der Belegung seiner Operanden.

Hilfs-op. Opd Format Erklärung
alle A xpr[Pint] Name oder Nummer des Parameters, in den das Resultat des Zählens einzutragen ist
Bxpr Untere Grenze der Nummern der Elementserie, für die gezählt werden soll
Cxpr Obere Grenze der Nummern der Elementserie, für die gezählt werden soll
U | NU | I | NI | FV | FNV    Es werden Zustandsbedingungen von Einrichtungen abgefragt.
U =Used, I = Interrupted, V = aVailable.
D
und E bleiben frei.
SE | SNE | SF | SNF | SV | SNV     Es werden Zustandsbedingungen von Speichern abgefragt.
E = Empty, F = Full, V = aVailable.
D
und E bleiben frei.
LR | LS     Es werden Zustände von Logischen Schaltern abgefragt.
D und E bleiben frei.
G | GE | L | LE | E | NE Dxpr Ausdruck, mit dessen Wert alle Attributwerte der angegebenen Serie verglichen werden
E   Spezifikation des Attributes, bezüglich dessen gezählt werden soll. Es sind nur Standardattribute mit einem Index, also keine Matrixelemente, erlaubt.

BeispieleTop Paragraph

COUNT U (IFU)PB,1,10
Die Anzahl der belegten unter den Einrichtungen 1 . . 10 wird im Byteparameter mit dem Namen IFU notiert.
COUNT SNV 2PH,KASSE1,KASSE10
Die Anzahl nicht verfügbarer Speicher im Bereich der Nummern zwischen KASSE1 und KASSE10 wird dem Halbwortparameter 2 zugewiesen.
COUNT L 4PB,3,8,5,S
Die Anzahl der Speicher der Nummernserie 3 - 8, deren Inhalt kleiner als 5 ist, wird in den Byteparameter mit der Nummer 4 eingetragen.

Programmbeispiel 1: Zwei WürfelTop Paragraph


Die Resultate findet man in der Standardausgabe.

Programmbeispiel 2: Bedarfsabhängige KassenöffnungTop Paragraph



Die im Modell angenommene Entscheidungsregel des Managers ist praktisch unvorteilhaft. Was kann man am Modell verbessern?

SLX

SELECT Top

Funktion
Beschreibung
Beispiele
Programmbeispiel

FunktionTop Paragraph

SELECT
ist ein Block, mit dem man eine Serie von Modellelementen durchsuchen kann. Gesucht wird das erste Element, bei dem eine arithmetische Bedingung oder eine Zustandsbedingung erfüllt ist, ein NSA einen bestimmten Wert annimmt oder dasjenige Element, wofür ein Standardattribut einen Extremwert erreicht.
So kann man z.B. die Nummer der Schlange mit der momentan kürzesten Länge bestimmen.

BeschreibungTop Paragraph

SELECT ist ein Block, bei welchem sechs Operanden belegt sein können. Die folgende Tabelle beschreibt die Wirkung von SELECT in Abhängigkeit von der Belegung seiner Operanden.

Hilfs-op.Opd Format Erklärung
alle A xpr[Pint] Name oder Nummer des Parameters, in den die Nummer eines Elements einzutragen ist, das die angegebene Bedingung erfüllt (SELECT-Parameter )
B xpr Untere Grenze der Nummern der Elementserie, die in die Auswahl einbezogen werden soll
C xpr Obere Grenze der Nummern der Elementserie, die in die Auswahl einbezogen werden soll
G | GE | L | LE | E | NED xpr Wenn der Hilfsoperator einen Vergleich spezifiziert, ist hier der Vergleichswert anzugeben
U | NU | I | NI | FV | FNV     Es werden Zustandsbedingungen von Einrichtungen abgefragt. Die erste Einrichtung, welche die Bedingung erfüllt, wird im SELECT-Parameter eingetragen.
U =Used, I = Interrupted, V = aVailable.
D und E bleiben frei.
SE | SNE | SF | SNF | SV | SNV     Es werden Zustandsbedingungen von Speichern abgefragt. Der erste Speicher, welcher die Bedingung erfüllt, wird im SELECT-Parameter eingetragen.
E = Empty, F = Full, V = aVailable.
D und E bleiben frei.
LR | LS     Es werden Zustände von Logischen Schaltern abgefragt. Der erste Logische Schalter, welcher die Bedingung erfüllt, wird im SELECT-Parameter eingetragen.
D und E bleiben frei.
MIN | MAX     MIN und MAX spezifizieren die Suche nach dem minimalen oder maximalen SNA-Wert. Die entsprechende Elementnummer, im Zweifelsfall die kleinste, wird im SELECT-Parameter eingetragen.
G | GE | L | LE | E | NE E xpr Spezifikation des Attributes, bezüglich dessen gezählt werden soll. Es sind nur Standardattribute mit einem Index, also keine Matrixelemente, erlaubt.
alle außer MIN und MAX Fxpr Nummer oder Name eines Blockes, zu dem die Transaktion umgeleitet werden soll, wenn keines der geprüften Elemente die Auswahlbedingung erfüllt

BeispieleTop Paragraph

SELECT MIN 1PH,1,3,,Q
In den ersten Halbwortparameter wird die Nummer der momentan kürzesten der Schlangen 1 . . 3 eingetragen.
SELECT NU 2PB,3,10,,,AAA
Wenn eine der Einrichtungen 3 . . 10 frei ist, wird ihre Nummer im Byteparameter 2 notiert. Sonst geht die Transaktion zum Block AAA.
SELECT GE 1PF,20,35,10,SP,BBB
Der erste Speicher mit Nummer 20 . . 35 und mindestens 10 freien Plätzen wird im Vollwortparameter 1 notiert.

ProgrammbeispielTop Paragraph


LOOP Top

Funktion
Beschreibung
Beispiele
Programmbeispiel

FunktionTop Paragraph

LOOP
ist ein Block, der den zyklischen Durchlauf von Transaktionen durch eine Folge von Blöcken organisiert. Da sich gleichzeitig mehrere Transaktionen in der Blockfolge befinden können, benötigt jede ihren individuellen Zykluszähler. Das ist ein ganzzahliger Parameter. Bevor die Transaktion in die zyklisch zu durchlaufende Blockfolge eintritt, wird diesem Parameter die Anzahl der Durchläufe als Wert zugewiesen. Am Ende der Blockfolge steht der LOOP-Block. Er dekrementiert den Parameterwert um 1 und organisiert den Rücksprung zum ersten Block der Folge. Wenn der Parameterwert nach dem Dekrementieren noch größer als Null ist, erfolgt der Rücksprung. Sonst wird die Transaktion zum Folgeblock weitergeleitet.

BeschreibungTop Paragraph

Operand Format Beschreibung
A xprPint Name oder Nummer des Parameters, der um 1 zu verringern ist und mit Null zu vergleichen ist. Wenn der Parameter nach dem Dekrementieren größer als Null ist, wird zu dem im Operanden B angegebenen Block verzweigt. Wenn er Null ist, geht die Transaktion zum Folgeblock. Ist er kleiner Null, erfolgt eine Fehlermeldung.
B xpr Name oder Nummer des Blockes, zu dem verzweigt werden soll

BeispieleTop Paragraph

LOOP 3PH,*-3
Solange der Halbwortparameter mit der Nummer 3 größer als Null ist, wird zum drittletzten Block verzweigt.
LOOP (LCOUNT)PB,BBB
Solange der Byteparameter mit dem Namen LCOUNT größer als Null ist, wird zum Block mit dem Namen BBB verzweigt.

ProgrammbeispielTop Paragraph


KontrollfragenTop

  1. Schildern Sie die Möglichkeiten von GPSS/H, numerische Werte zu speichern und ihnen Werte zuzuweisen!
  2. Welche Typen von Skalaren sind im GPSS/H verfügbar und welche Wertebereiche haben sie?
  3. Wie erfolgen Wertzuweisungen an Skalare?
  4. Welche Typen von Matrizen sind im GPSS/H verfügbar?
  5. Mit welchen Anweisungen kann man Matrizen definieren und ihnen Werte zuweisen?
  6. Wozu dienen Tabellen?
  7. Wie kann man Tabellen definieren und ihnen Werte zuweisen?
  8. Kennen Sie einen Tabellentyp, wo Eintragungen ohne den TABULATE-Block gemacht werden?
  9. Definieren Sie eine Tabelle zu Erfassung von Häufigkeiten des Auftretens von Durchlaufzeiten (M1) mit Zeitintervallen, die bei (20,25) beginnen und bis (45,50) reichen!
  10. Erklären Sie die Funktion des COUNT-Blockes, geben Sie ein Beispiel an und erläutern dazu die Operanden !
  11. Erklären Sie die Funktion des SELECT-Blockes, geben Sie ein Beispiel an und erläutern dazu die Operanden !
SAHome previous next up Englishsmaller fonts Top Line
Last Modified Fri 05-27-11 06:54 GMT Valid CSS!

Comments please to:pelosim@yahoo.com