二つ以上の条件の重なり、例えば、「変数Kが3以上10以下であれば」という条件を論理式で書くと
IF ( (K >= 3) & (K <= 10) ) THEN statement-A ELSE statement-B同じことを下のように書き換えることができます。これがド・モルガンの法則の応用です。
IF ( (K < 3) | (K > 10) ) THEN statement-B ELSE statement-A文章の例で説明すると「雨が降って気温が低ければ…」と「雨が降らなくて気温が低くなければ…」と言い換えることを法則としたものです。この論理式は二つの条件文を組み合わせた形になっていて、&(AND)と|(OR)は、それを繋ぐ論理演算子です。込み入った条件文を使うときは、AND, OR, NOT, XOR, IMPのような、文字を使う演算子を定義することがあります。しかし、この演算子を使わなくても、少し泥臭く見えますが、IF文の繰り返しで同じ判断が処理できます。8ビットのマイコンで使ったBASICには、AND, ORなどの論理演算子がありませんでした。Plain_Basicも基本的なバージョンには、文字で表す演算子を含ませていません。上のような表現方法ができると、プログラム文がスマートに見えます。ド・モルガンの法則は高校の数学で扱っています。プログラミングで、この法則を巧みに応用できるようになれば、IF文の勉強は卒業です。