Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Arithmetische Ausdrücke

&pagelevel(3)&pagelevel

Funktion

Arithmethische Ausdrücke erlauben es dem Anwender, arithmetische Operationen miteinander zu kombinieren.

Format

Ein arithmetischer Ausdruck kann einer der folgenden sein:

  • ein Bezeichner eines numerischen Datenelements

  • ein numerisches Literal

  • zwei arithmetische Ausdrücke, getrennt durch einen arithmetischen Operator sowie ein von Klammern eingeschlossener arithmetischer Ausdruck

Jedem arithmetischen Ausdruck kann ein unäres Plus (+) oder ein unäres Minus (-) vorangehen.

Arithmetische Operatoren

Die folgenden Operatoren können in arithmetischen Ausdrücken verwendet werden:

Binärer Operator

Bedeutung

+

Addition

-

Subtraktion

*

Multiplikation

/

Division

**

Potenzierung

Unärer Operator

Bedeutung

+

gleiche Wirkung wie Multiplikation mit dem numerischen Literal +1

-

gleiche Wirkung wie Multiplikation mit dem numerischen Literal -1


Einem binären arithmetischen Operator muss laut Standard immer ein Leerzeichen vorausgehen und nachfolgen.
Der Compiler erlaubt jedoch, dass alle diese Operatoren, außer den Additions- und Subtraktionsoperatoren, ohne die sie einschließenden Leerzeichen verwendet werden können. Dem Subtraktionsoperator (-) muss immer ein Leerzeichen vorausgehen und folgen.

Dem Additionsoperator (+) muss ein Leerzeichen folgen, wenn er vor einem vorzeichenlosen numerischen Literal steht. Beide Operatoren dürfen unmittelbar einer runden Klammer vorausgehen oder nachfolgen.
Einem unären + muss ein Leerzeichen folgen, wenn es vor einem vorzeichenlosen Literal steht. Einem unären - muss immer ein Leerzeichen folgen.

Regeln für die Bildung und Auflösung von Ausdrücken

  1. Ein arithmetischer Ausdruck kann nur mit einer linken Klammer, einem unären +, einem unären -, einem Bezeichner oder einem Literal beginnen und kann nur mit einer rechten Klammer oder einer Variablen (bezeichner oder literal) enden.

  2. Linke und rechte Klammern eines arithmetischen Ausdrucks müssen paarweise auftreten.

  3. In Tabelle 18 ist die zulässige Kombination von Operatoren, Variablen und Klammern in arithmetischen Ausdrücken zusammengestellt.

    Erstes ZeichenZweites Zeichen

    bezeichner, literal

    arithmetischer operator

    unärer operator

    (

    )

    bezeichner,literal-

    P

    --

    P

    arithmetischer operator

    P

    -

    P

    P

    -
    unärer operator

    P

    --

    P

    -
    (

    P

    -

    P

    P

    -
    )-

    P

    --

    P

    Tabelle 18: Zulässige Symbol-Paare in arithmetischen Ausdrücken

    P bedeutet, dass die zwei Zeichen nacheinander auftreten können (erlaubtes Paar),
    - bedeutet, dass die zwei Zeichen nicht nacheinander auftreten dürfen (ungültiges Paar).

  4. Klammern können in arithmetischen Ausdrücken verwendet werden, um die Reihenfolge anzugeben, in der die Elemente berechnet werden sollen.

  5. Ausdrücke innerhalb von Klammern werden zuerst berechnet. Wenn geschachtelte Klammern benutzt werden, so erfolgt die Auflösung von der innersten zur äußersten Klammer.

  6. Wenn keine Klammern benutzt werden oder geklammerte Ausdrücke gleichwertig sind, werden folgende Präzedenzregeln (= Stufen der Rangordnung) bei der Auflösung angewendet:

    1. Unäres Plus und Minus (zuerst aufgelöst)

    2. Potenzierung

    3. Multiplikation und Division

    4. Addition und Subtraktion (zuletzt aufgelöst)

  7. Wenn aufeinanderfolgende Operationen die gleiche Stufe der Rangordnung haben, werden sie von links nach rechts aufgelöst.

Allgemeine Regeln

  1. Klammern werden entweder benutzt, um logische Mehrdeutigkeit da zu vermeiden, wo aufeinanderfolgende Operationen auf der gleichen Stufe der Rangordnung erscheinen, oder um die normale Reihenfolge der Ausführung zu verändern.

  2. Arithmetische Ausdrücke werden in arithmetischen und in bedingten Anweisungen verwendet.

Beispiel 8-2

Ausdruck:

A + (B - C) * D

Auflösung des Ausdrucks:

1. B - C

(Ergebnis wird x genannt)


2. x * D

(Ergebnis wird y genannt)


3. A + y

(Endergebnis)

Beispiel 8-3

Ausdruck:

A + ((B / C) + (D ** E) * F) - G

Auflösung des Ausdrucks:

1. B / C

(Ergebnis wird z genannt)


2. D ** E

(Ergebnis wird x genannt)


3. x * F

(Ergebnis wird y genannt)


4. z + y

(Ergebnis wird a genannt)


5. A + a

(Ergebnis wird b genannt)


6. b - G

(Endergebnis)