トップページ ≫ スクリプト ≫ 用語ガイド ≫ 「条件分岐」とは

スクリプト [ 用語ガイド 「条件分岐」とは ]

はじめに






条件分岐とは、
変数の中身が一定の条件を満たしているか調べて
その結果により、実行させる命令を切り替える事です。

この条件分岐の仕組みを簡単に表すと、図1のようになります。

図1の例では、ヘッドライトの状態を変数に取得して、
その変数の中身は"0"かどうかを調べています。
つまり、ヘッドライトは消灯しているか調べているわけです。

そして、条件を満たしていた(変数の中身が"0"だった)場合には、
ヘッドライトを点灯する命令を実行させています。



これをスクリプトに書き起こすと、図2のようになります。

条件分岐を行なうには、if命令とendif命令をセットで使います。
今回は、変数の中身が"0"かどうか調べるので、
「ifzero」というif命令を使って、条件分岐をさせています。

そして、条件を満たしていた時に実行させる命令は、
「ifzero」と「endif」の間に記述しておきます。
 

条件を満たさなかった場合について






先ほどの「ifzero〜endif」という条件分岐では、
条件を満たさなかった場合、何も実行せずにいました。

しかし、「else」という命令を加える事で、
条件を満たさなかった場合にも、他の命令を実行させる事が可能です。

図1は、先ほどと同様にヘッドライトが消灯しているか調べていますが、
条件を満たさなかった(変数の中身が"0"以外だった)場合には、
ヘッドライトを消灯する命令を実行させるようにしています。

つまり、
ヘッドライトが消灯しているなら、ヘッドライトを点灯させる
ヘッドライトが点灯しているなら、ヘッドライトを消灯させる
という条件分岐になるわけです。



これをスクリプトに書き起こすと、図2のようになります。

このように「else」を加えた条件分岐を記述する場合、
条件を満たしていた時に実行させる命令は、
「ifzero」と「else」の間に記述しておきます。

そして、条件を満たさなかった時に実行させる命令は、
「else」と「endif」の間に記述しておきます。

 

if命令の種類

■ if

一般変数を指定した場合は、
変数の中身が"0"以外かを調べます。

オブジェクト変数を指定した場合は、
変数の中身が"空"以外かを調べます。

■ ifzero

一般変数を指定した場合は、
変数の中身が"0"かどうかを調べます。

オブジェクト変数を指定した場合は、
変数の中身が"空"かどうかを調べます。

■ ifeq

一般変数を指定した場合は、
変数の中身が特定の数値と"同じ"かを調べます。

オブジェクト変数を指定した場合は、
変数の中身が特定の部品名称と"同じ"かを調べます。

■ if<

一般変数を指定した場合は、
変数の中身が特定の数値より"小さい"かを調べます。

オブジェクト変数を調べる事はできません。

■ if>

一般変数を指定した場合は、
変数の中身が特定の数値より"大きい"かを調べます。

オブジェクト変数を調べる事はできません。

■ if<=

一般変数を指定した場合は、
変数の中身が特定の数値"以下"かを調べます。

オブジェクト変数を調べる事はできません。

■ if>=

一般変数を指定した場合は、
変数の中身が特定の数値"以上"かを調べます。

オブジェクト変数を調べる事はできません。