その4 ループの入れ子は可能だった(2002/02/17作成)

ループの入れ子は扱えないのかと思っていましたが,これは勘違いでした。
例えば,以下のようになります。

PROC loop_ireko:
LOCAL i%,j%

WHILE i%<3
    PRINT "I"
        WHILE j%<2
            PRINT "J"
            j%=j%+1
        ENDWH
    j%=0
    i%=i%+1
ENDWH

GET
ENDP
BASICとかでは,

FOR i=1 TO 3
    PRINT "I"
        FOR j=1 TO 2
            PRINT "J"
        NEXT j
NEXT i
というように,変数(カウンタ)でループを区別できました。
というより,FOR文では,カウンタを定義することが必要だったんですよねぇ。
私はこれまで見てきたOPLの例では,ループ処理の終わりを,IF文とBREAKで定義しているものしか見ていませんでした。
なので,OPLでループの入れ子はできないのか?,などと思ってしまいました。
(BASICでは,NEXTの後の変数の記述は,省略できました)

BASICの話はさておき,これで多次元の配列も扱いやすくなると思ったんですが...
その5に続く。


その3 GOTOでスパゲッティ<-->その5 2次元以上の配列はないの?
OPLはじめの一歩
最初のページ