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

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

はじめに






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

この条件分岐の仕組みを簡単に表すと、図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>=

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

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