Loops/Break: Difference between revisions

Content added Content deleted
(PascalABC.NET)
(Added Oberon-07)
Line 2,676: Line 2,676:
=={{header|Oberon-2}}==
=={{header|Oberon-2}}==
Works with oo2c Version 2
Works with oo2c Version 2
<syntaxhighlight lang="oberon2">
<syntaxhighlight lang="modula2">
MODULE LoopBreak;
MODULE LoopBreak;
IMPORT
IMPORT
Line 2,698: Line 2,698:
Do
Do
END LoopBreak.
END LoopBreak.
</syntaxhighlight>

=={{header|Oberon-07}}==
{{works with|Oberonc (Oberon-07 compiler for the JVM)}}
{{trans|Oberon-2|Using the RandomNumbers module from the [[Sleeping_Beauty_problem#Oberon-07|Sleeping Beauty problem]] task.}}
The LOOP and EXIT statements present in Oberon-2 were removed from Oberon-07, as were LONGINT and SHORTINT.
<syntaxhighlight lang="modula2">
MODULE LoopsBreak;
IMPORT
RandomNumbers, Out;

PROCEDURE Do();
VAR rn : INTEGER;
exit : BOOLEAN;
BEGIN
exit := FALSE;
REPEAT
rn := RandomNumbers.randomInt( 20 );
Out.Int( rn, 0 );Out.Ln;
exit := rn = 10;
IF ~ exit THEN
rn := RandomNumbers.randomInt( 20 );
Out.Int( rn, 0 );Out.Ln
END
UNTIL exit;
END Do;

BEGIN
Do
END LoopsBreak.
</syntaxhighlight>
</syntaxhighlight>