vor

Objektorientierte Programmierung mit Object-Pascal

weiter

4.6 Operatoren, Ausdrücke und Anweisungen

Ausdrücke sind Folgen von Konstanten oder variablen Werten, die durch einen oder mehrere Operatoren verbunden sind. Variablen kann man einen Wert zuweisen, oder besser einen Ausdruck. Solch eine Zeile ist eine Anweisung. Jede Anweisung wird mit einem Semikolon ';' beendet:

Nummer := 3;
Nummer := Nummer2;
Nummer := Nummer2 + 1;
Nummer := Nummer + 1;


An der letzten Anweisung sieht man, dass das Zuweisungszeichen ':=' nicht das gleiche sein kann wie das mathematische Gleichheitszeichen. Man sollte es auch nicht lesen als 'ist gleich' sondern besser als 'wird zu'.

Der Negationsoperator '-' ist ein Operator, der nur mit einem einzigen Wert arbeitet - fast alle anderen arbeiten mit zwei Werten, um ein Ergebnis zu bilden. Dazu gehören u. a. '+', '-', '*', '/', 'DIV', 'MOD'.

Für die Division von ganzen Zahlen gibt es zwei besondere Operationen: DIV und MOD.
a DIV b gibt an, wie oft b in a ganz enthalten ist. Der Rest wird ignoriert.
a MOD b gibt der Rest nach der Division durch b aus.

(Beispiel: Projekt Quersumme)

Es gelten die normalen Rechenregeln und die Punkt-vor-Strich-Regel. Teilausdrücke in Klammern haben Vorrang.

Zeichenketten (Typ String) können mit dem Operator '+' aneinander gereiht werden.

Logische Ausdrücke sind vom Typ Boolean, sie haben einen der Werte True oder False. Mit ihnen lässt sich der Programmablauf steuern:

A = B
A > B
A < B
A >= B
A <= B
Entscheidung := A = B;


Die letzte Zeile zeigt, dass man das Ergebnis solcher Ausdrücke direkt einer Variablen vom Typ Boolean zuweisen kann. Dabei sind die Argumente der Operatoren nicht unbedingt vom Typ Boolean.

Andere Operatoren, die nur Argumente vom Typ Boolean akzeptieren, sind z. B. 'AND' und 'OR':

(A > 3) AND (B > 3)
liefert den Wert True, wenn sowohl A als auch B größer als 3 sind.

(A < 3) OR (B < 3)
liefert den Wert True, wenn mindestens eine der beiden Variablen A oder B kleiner als 3 ist.

Es gibt auch einen Operator für String-Ausdrücke, das Pluszeichen. Es ermöglicht, zwei Strings miteinander zu verketten.

Wenn man beispielsweise die beiden Variablen s1 und s2 mit var s1, s2: String; deklariert hat, kann man folgende Zuweisung realisieren:

s1 := 'Wolfgang';
s2 := s1 + ' Bergt';


In s2 ist nun der String 'Wolfgang Bergt'. Das selbe Ergebnis hätte man übrigens auch folgendermaßen erreicht:

s1 := 'Wolfgang';
s2 := s1 + ' ' + #66 + #101 + #114 + #103 + #116 ;


vor

Inhaltsverzeichnis

weiter