2010年3月1日月曜日

True と False を数値で判定する

If Then Else ステートメントを使って条件が True か False のどちらになるかを調べたいとき、条件式の結果が 0 なら False, それ以外は True となることを知っているとシンプルに記述できる場合があります。

では0以外の数値が True として扱われていることを次のエージェントで確かめてみます。
Sub Initialize
    Dim intValue As Integer

    intValue = 6
    If intValue Then
        Print Cstr( intValue ) & " は True です。"
    Else
        Print Cstr( intValue ) & " は False です。"
    End If

    intValue = 0
    If intValue Then
        Print Cstr( intValue ) & " は True です。"
    Else
        Print Cstr( intValue ) & " は False です。"
    End If

    intValue = -1
    If intValue Then
        Print Cstr( intValue ) & " は True です。"
    Else
        Print Cstr( intValue ) & " は False です。"
    End If
End Sub
上記の結果は

6 は True です。
0 は False です。
-1 は True です。


となりました。


ところで True か False かを表すデータ型 Boolean の値は計算することができるのでしょうか。

下のエージェントで確認してみます。
Sub Initialize
    Dim bolValue As Boolean
    bolValue = True
    Print Cstr( bolValue ) & " に 1 を掛けると " & Cstr( bolValue * 1 ) & " です。"

    bolValue = False
    Print Cstr( bolValue ) & " に 1 を掛けると " & Cstr( bolValue * 1 ) & " です。"
End Sub
上の結果は

True に 1 を掛けると -1 です。
False に 1 を掛けると 0 です。


となりました。

きちんと計算できました。

0 件のコメント:

コメントを投稿