Files
Nikola 9bc7ba9166 Initial commit :
Last change made - Inserted Flask API section
2026-07-11 19:33:44 +02:00

1.2 KiB

Struktur von Program

Programme sind hierarchisch aus Komponenten aufgebaut. Für jede
Komponente geben wir Regeln an, wie sie aus anderen
Komponenten zusammengesetzt sein können.

 program = decl* stmt*
 decl = type name ( , name)*
 type = int

Statements

stmt ::= ; | { stmt* } |  
name = expr; | name = read(); | write( expr ); |  
if ( cond ) stmt |  
if ( cond ) stmt else stmt |  
while ( cond ) stmt
  • Ein Statement ist entweder leer (d.h. gleich ;) oder eine
    geklammerte Folge von Statements;
  • Oder eine Zuweisung, eine Lese- oder Schreib-Operation;
  • Eine (einseitige oder zweiseitige) bedingte Verzweigung;
  • Oder eine Schleife.

Expressions

expr ::= number | name | ( expr ) |  
unop expr | expr binop expr 
unop ::= -  
binop ::= - | + | * | / | %
  • Ein Ausdruck ist eine Konstante, eine Variable oder ein geklammerter Ausdruck
  • Oder ein unärer Operator (unop), angewandt auf einen Ausdruck,
  • Oder ein binärer Operator(binop), angewandt auf zwei Argument-Ausdrücke.
  • Einziger unärer Operator ist (bisher) die Negation.
  • Mögliche binäre Operatoren sind Addition, Subtraktion, Multiplikation, (ganz-zahlige) Division und Modulo.