Top > 制御命令
プログラムは原則的に 上から順に1行ずつ実行されます。 下から上に昇っていくことはありません。 しかし、プログラムを組み立てていくと 途中で任意の行にジャンプさせたり 同じ行を 繰り返し実行させたいこともでてきます。 また ある条件によって プログラムの流れを分岐させたいときもあります。 そんなときは 「分岐命令」を使います 生業命令には 以下があります。 条件分岐式・・・ある条件でプログラムを枝分かれさせたいとき [[条件分岐式>IF]]・・・ある条件でプログラムを枝分かれさせたいとき ループ文・・・・ある文を繰り返し実行させたいとき GOTO文・・・・・ある行までジャンプさせるとき ***条件分岐式 [#tfefb476] ある条件を与えて、その結果によってプログラムの流れを2つに分岐させます。 条件分岐式は 以下のように書きます。 IF 条件文 THEN 条件が真の場合に 実行する文 ELSE 条件が偽の場合に 実行する文 例 IF x<=0 THEN y:=100 {もしxが 0 以下だったら yに100を代入する} ELSE y:=200; {そうでないときは、 yに200を代入する} ここで気を付けなければならないのは 条件が真の場合の文の最後にはセミコロン(;)をつけないことです。 文は 本来以下のように一行でできる文なのですが、読みやすくするために 改行しています。 IF x<=0 THEN y:=100 ELSE y:=200; [[FORループ文>FOR]] [[WHILEループ文>WHILE]] [[REPEAT-UNTILループ文>REPEAT]] [[GOTO文>GOTO]]・・・・・ある行までジャンプさせるとき ''[文が複数行ある場合]'' 文が複数ある場合は BEGIN と END でくくります。 例 IF x<=0 THEN BEGIN y:=100; z:=500; END ELSE BEGIN y:=200; z:=600; END; ※ この場合 (;)は省略なし ''[ELSEの省略]'' 条件が偽のときは実行する文が無い場合は ELSE文を省略できます。 例 IF x<=0 THEN BEGIN y:=100; z:=500; END; ''[複数の条件]'' 複数の条件式を論理演算子で結合させることで、複数の条件を与えることができます。 条件文1、条件文2 ともに満たす場合 IF (条件文1) AND (条件文2) THEN 処理 例 IF (x<=0) AND (y=100) THEN z:=200; {xが0以下で、かつyが100のときは、zに200を代入する} 条件文1、条件文2 のどちらかを満たす場合 IF (条件文1) OR (条件文2) THEN 処理 例 IF (x<=0) OR (y=100) THEN z:=200; {xが0以下、または、yが100のときは、zに200を代入する} |