program Fehler { // Kommentar: Ulam-Algorithmus var param, ulam, temp : int // Bitte hier Startwert festlegen param := 350; ul@m := 0; // Lexikalischer Fehler whi1e ulam = 0 do { // Syntaxfehler (Ursache lexikalisch, welche?) if param = 1 then ulam = param // Syntaxfehler if (param != 1) // Syntaxfehler { print param; // Zweier-Division mit Rest: temp := param; while temp > 1 do temp := temp - 2; if temp := 0 then // Syntaxfehler param := param / 2; if temp != 0 then param := 3*param+1; // Syntaxfehler (WO?) } } // Ende: print ulam; // Korrekt: Scanner erkennt Plus immer als Operation blah := -41-foo+41+blah; krah := foo - -41 + 32; // Syntaxfehler (WO?) }