Anweisungsfolge |
;
Codeblock
IF-Block
SWITCH-Block
WHILE-Block
FOR-Block
RETURN-Anweisung
Anweisung ; |
Codeblock |
{ Anweisungsfolge } |
IF-Block |
IF ( Anweisung )
Anweisungsfolge Elsecodeblock
Beispiel: |
if (x == 3)
{
y1 = 2;
y2 = 3;
}
else
{
y1 = 0;
y2 = 0;
}
|
|
Elsecodeblock |
ELSE Anweisungsfolge |
SWITCH-Block |
SWITCH ( Anweisung )
{ CASE-Block }
Beispiel: |
switch (x)
{
case 1: y = sin(a);
case 2: y = cos(a);
case 3: y = tan(a);
default: y = 0;
}
|
|
CASE-Block
|
CASE Konstante : C-Anweisung
DEFAULT : C-Anweisung |
C-Anweisung |
Anweisungsfolge
BREAK-Anweisung |
WHILE-Block |
WHILE ( Anweisung ) S-Codeblock
Eine WHILE-Schleife wird solange wiederholt, wie das
Ergebnis der Vergleichsanweisung wahr ist. Diese Auswertung wird vor der
ersten Anweisung des Codeblocks durchgeführt.
Beispiel: |
i=1;
while (i<=10)
{
i; i=i+1;
}
|
|
FOR-Block |
FOR ( S-Anweisung ; A-Anweisung
; N-Anweisung ) S-Codeblock
Eine FOR-Schleife wird solange wiederholt, wie das
Ergebnis der Vergleichsanweisung (A-Anweisung) wahr ist.
Vor dem ersten Vergleich wird die S-Anweisung ausgeführt
(Initialisierung). Diese Anweisung ist aber von der Vergleichsanweisung
völlig unabhängig zu sehen.
Nach der letzten Anweisung des Codeblocks wird die N-Anweisung
(Reinitialisierung) ausgeführt. Auch sie ist von der Vergleichsanweisung
unabhängig zu sehen.
Beispiel: |
for (i=1; i<=90; i=i+10)
{
"Sinus von "; i; "="; sin(i*6.283185/360);
}
|
|
S-Codeblock |
Anweisungsfolge
CONTINUE-Anweisung
BREAK-Anweisung |
S-Anweisung |
Anweisung |
A-Anweisung |
Anweisung |
N-Anweisung |
Anweisung |
RETURN-Anweisung |
RETURN Anweisung ;
über RETURN wird der aufrufenden Funktionen ein
Funktionsergebnis zurückgegeben.
Fehlt bei RETURN eine Rückgabeangabe, wird 0 als Funktionsergebnis
zurückgegeben.
Fehlt in einer Funktion RETURN als letzte Anweisung, wird 0 als
Funktionsergebnis zurückgegeben.
Beispiele: |
return;
return 2;
return "Länge="+len(x);
|
|
CONTINUE-Anweisung |
CONTINUE ;
CONTINUE ist nur in einer FOR-Schleife und einer
WHILE-Schleife zulässig.
Es bewirkt einen direkten "Sprung" zum Schleifenende, was bei
einer WHILE-Schleife zur erneuten Auswertung der Schleifenbedinung führt.
Bei einer FOR-Schleife wird dadurch die Reinitialisierung der
Schleifenformulierung (N-Anweisung) und eine anschließende Auswertung der
Schleifenbedingung (A-Anweisung) durchgeführt.
CONTINUE wirkt sich immer auf den innersten Schleifenkörper aus.
|
BREAK-Anweisung |
BREAK ;
BREAK ist nur in einer FOR-Schleife, einer
WHILE-Schleife und im SWITCH-Block zulässig.
Es bewirkt ein direktes Verlassen der Schleife bei einer FOR-Schleife und
einer WHILE-Schleife sowie das Verlassen des CASE-Blocks in einem
SWITCH-Block.
BREAK wirkt sich immer auf den innersten Schleifenkörper sowie
SWITCH-Block aus.
|
Anweisung
|
Zuweisung
Funktionsaufruf
Operation |
Zuweisung |
Variable = Anweisung
Beispiele: |
y=1;
y="Hallo";
y="Heute ist der " + date();
|
|
Funktionsaufruf |
Funktionsname ( Argumentliste ) |
Argumentliste |
Argument
Argumentliste , Argument |
Argument |
Variable
Konstante |
Operation |
Objekt Operator Objekt |
Operator |
aufsteigend in der Priorität der Operatoren
? : |
Bedingungsoperator |
|| |
logisches Oder |
&& |
logisches Und |
| |
binäres Oder |
^ |
binäres exklusives Oder |
& |
binäres Und |
== != |
Gleichheit, Ungleichheit |
< >
>= <= |
kleiner, größer, größergleich, kleinergleich |
+ - |
Addition, Subtraktion |
* /
% |
Multiplikation, Division, Modulus |
~ |
binäres Komplement |
! |
Negation |
|
Objekt |
Variable
Konstante
Funktionsaufruf
( Anweisung ) |
Variable |
Bezeichner
Bezeichner [Key]
Bezeichner [Index]
Bezeichner [#Index]
Bezeichner [] |
Key |
String |
Index |
Integer |
Funktionsname |
Bezeichner |
Konstante |
Integer
Double
String
Symbol |
Symbol |
@Bezeichner
Ein Symbol wird intern als enumerativer Wert abgebildet |
Integer |
[0-9]+ |
Hexadezimalinteger |
0[Xx][0-9A-Fa-f]+ |
Double |
[0-9]+.[0-9]+ |
String |
"Any" |
Any |
[beliebigesZeichen]* |
Bezeichner |
[_A-Za-zÄäÖöÜüß][_A-Za-z0-9ÄäÖöÜüß]*
zwischen Groß/Kleinschreibung wird nicht unterschieden |