トピック
Kouta maguroumainya

本当にUNTILとIF一緒なの?

1そうだね
プレイ済み
返信[1]
親投稿
SquidSky ugomemo_gorohati
あー、UNTILは「条件式」だけ書けるので、「THEN END」は書けませんよ。 あくまで、REPEAT~UNTILは、UNTIL 条件式が成立する間、ループから抜けないための、WHILEの逆さま版です。なので、条件判定は処理後に行われます。
0そうだね
プレイ済み
返信[2]
親投稿
SquidSky ugomemo_gorohati
ということで、画像のプログラムを改めて書き換えますと REPEAT VSYNC 1 UNTIL BUTTON()==#X となります。
1そうだね
プレイ済み
返信[3]
親投稿
ヘルプに「IFと同等の条件式を書くことができます」とあるのは、「条件式」に同じ式が使えると言う意味で、同じ「構文」が書けると言うことではありません。 UNTILは、ループの中身を実行した後、条件式が「偽(正しくない)」の間はループを繰り返し、「真(正しい)」の時はUNTILの次の命令から実行するので、ループの中身を必ず1回実行します。(条件式はループ終了条件) WHILEは、条件式が「真(正しい)」の間は繰り返し、「偽(正しくない)」の時はWENDの次の命令から実行するので条件によってはループの中身を1度も実行しないこともあります。(条件式はループ継続条件)
2そうだね
プレイ済み