|
|
Topic complex |
Language elements |
Function |
'AUSDRÜCKE' |
Short |
So sind arithmetische Ausdrücke aufgebaut |
Syntax |
|
Parameter |
|
Return |
|
See also: |
|
Description |
Arithmetische Ausdrücke
Bei der Ausführung eines Programms, also zu dessen Laufzeit, werden Audrücke berechnet. Häufig ist das Ergebnis der Berechnung völlig uninteressant (und fällt demnach auch einfach unter den Tisch). Es sind in diesen Fällen die sogenannten "Seiteneffekte" der Berechnung, denen das Augenmerk gilt. So liefert die Berechnung der Funktion cgiwriteln("Hallo Welt") den Wert 0. Als Seiteneffekt der Funktionsberechnung wird aber die Zeichenkette "Hallo Welt" in die Standardausgabe geschrieben - und das genau wollen wir an dieser Stelle ja auch.
Konstanten
Im einfachsten Fall ist ein arithmetischer Ausdruck eine Konstante. Das ist eine Größe, die ihren Wert nicht ändert, beispielsweise die Zahl 123 oder die Zeichenkette "Hallo"
EASY kennt folgende Konstanten:
Zeichenketten:
"abc" beliebige Zeichenfolge in doppelten Anführungszeichen
'abc' beliebige Zeichenfolge in einfachen Anführungszeichen
Zahlen:
123 natürliche Zahl
-123 (negative) ganze Zahl
123.456 Dezimalbruch (immer mit Dezimalpunkt)
-123.456 negativer Dezimalbruch
12:35 Zeitangabe
11.08.2000 Datumsangabe
Variablen und Funktionen
Überall dort, wo eine Konstante stehen kann, darf auch ein Variablenname oder ein Funktionsname stehen. Wenn eine Funktion Parameter benötigt, so werden diese in runden Klammern nach dem Funktionsnamen angegeben.
Somit ist cgiwriteln("hello world") ein (einfacher) arithmetischer Ausdruck.
Zusammengesetzte arithmetische Ausdrücke
Aus diesen einfachen Komponenten können mit den sogenannten "arithmetischen" Operation (=Rechenzeichen) kompexe Ausdücke gebildet werden.
Für Zahlen gibt es folgende Operatoren:
+ Addition 1+2 = 3
- Subtraktion 12-4 = 8
* Multiplikation 3*6 = 18
/ Division 1/4 = 0.25
DIV Division ohne Rest 9 DIV 4 = 2
MOD Rest einer (ganzzahligen) Division 9 MOD 4 = 1
B_AND bitweises AND zweier ganzer Zahlen 3 B_AND 6 = 2
B_OR bittweises OR zweier ganzer Zahlen 3 B_OR 6 = 7
B_NOT binäres Komplement einer ganzen Zahl B_NOT 0 = -1 (=x0ffffffff)
Für Zeichenketten gibt es nur zwei Operatoren
+ Verkettung zweier Zeichenketten "abc"+"def" = "abcdef"
[p,n] (nachgestellter) Teilstring-Operator "abcdef"[3,2] = "cd"
Hinweis zum Teilstring-Operator: Hier werden in eckigen Klammern zwei Parameter angegeben. Der erste bestimmt die Startposition, der zweite die Anzahl der Zeichen. Fehlt der zweite Parameter, so wird hier 1 angenommen. Zeigt der Teilstring-Operator ausserhalb des Strings (auf den er angewandt wird) so wird eine leere
Zeichenkette geliefert.
Für beide Typen gibt es noch den Zuweisungsoperator ":=". Dieser nimmt eine gewisse Sonderstellung ein, denn links vom Operator muss immer ein Variablenname stehen, rechts davon darf ein beliebiger Ausdruck sein:
Variablenname:=Ausdruck
Die Berechnung eines Ausdrucks mit dem Zuweisungsoperator ergibt den Wert des (Teil-)Ausdrucks auf der rechten Seite des Operators. Als Seiteneffekt erhält die
Variable genau diesen Wert zugewiesen.
Wichtig ist hier festzuhalten, dass in EASY die Wertzuweisung an eine Variable ein Ausdruck ist, der selbst wiederum den zugewiesenen Wert repräsentiert. Dieses Verhalten unterscheidet sich von den Zuweisungen in Pascal oder BASIC und entspricht der Zuweisung in C und C++.
Damit sind beispielsweise auch gleichzeitige Zuweisungen an mehrere Variablen möglich:
Variable1:=Variable2:=Variable3:=1+2+3+4
Abkürzungen
Seit tdbengine 6.2.3 sind noch folgende Abkürzungen zugelassen:
Wenn "i"eine Variable vom Typ REAL ist, können folgende Abkürzungen verwendet werden:
i:=i+1 zu i++
i:=i-1 zu i--
Klammern
Anstelle einer Konstanten (oder Variablen oder Funktion) darf in einem Ausdruck auch ein in runde Klammern eingeschlossener Ausdruck stehen.
Das ist die "akademische" Definition des sonst üblichen Hinweises, dass in einem Ausdruck zur Auflösung von Mehrdeutigkeiten runde Klammern eingesetzt werden dürfen.
Beispiele für arithmetische Ausdrücke:
1+2*(3-4)
"Hans"+(" - " + "Huber")[4,2]
Prioritäten
Bei allen arithmetischen Ausdrücken gilt die Regel: Punkt vor Strich. Das sollte hier genügen. Bei Unsicherheit verwenden Sie einfach Klammern.
Beispiel:
2+3*4 => 2+12 => 16
(2+3)*4 => 5*4 => 20
|
Write a comment:
|
|
|