Files
MicroST-Compiler/STCompiler.Compiler/input.st

52 lines
888 B
Smalltalk

PROGRAM Demo
VAR
a UINT := 0;
b UINT := 0;
i UINT := 0;
sum DINT := 0;
flag BOOL := 0; // FALSE -> 0
x REAL := 1.5;
y LREAL := 2.5;
cnt INT := 0;
// numbers ARRAY [1..10] OF INT;
// matrix ARRAY [0..3] OF REAL;
END_VAR
// numbers[1] := 42;
// numbers[2] := numbers[1] * 2;
// matrix[0] := 3.14;
// Einfacher If-Test
IF a = 0 THEN
a := 1;
END_IF;
// While-Schleife mit arithmetischen Ausdrücken
WHILE cnt < 3 DO
cnt := cnt + 1;
b := b + cnt * 2;
END_WHILE;
// For-Schleife mit BY und verschachteltem IF
FOR i := 1 TO 10 BY 2 DO
sum := sum + i;
IF i <> 5 THEN
flag := 1; // TRUE -> 1
ELSE
flag := 0; // FALSE -> 0
END_IF;
END_FOR;
// Abwärts-Schleife (negativer BY-Wert)
FOR i := 5 TO 1 BY -1 DO
sum := sum + i;
b := b + (i * (cnt + 1));
END_FOR;
// Rechnen mit Gleitkommazahlen
x := x + y / 2.0;
END_PROGRAM