Hallo Hugo
Wie gesagt bin ich am austesten der OSCAT-S7.
Module FACT
IF x >= 0 AND x < 8 THEN
fact := 1;
i := 2;
WHILE x < i DO
fact := fact * i;
END_WHILE;
ELSE fact := -1;
END_IF;
Es wird eine Endlosschleife erzeugt.
In der "While" sollte die Anweisung "i := i + 1;" stehen.