3
目次ページ  前ページ  次ページ

2. 論理演算

2.5 変数を三つ以上使う演算


2.5.3 演算子は計算手順の向きも決められている

 代数学の知識が一般化していますので、気にしなくなりましたが、二つの変数と一つの演算子を使う文字並び、例えば「A+B」と書けば、左から右への順で計算します。電卓にデータ入力をする順と考えることができます。このとき、Aを演算子の左辺値、Bを右辺値と言います。掛け算と足し算では、左辺値と右辺値とを入れ換えても同じ結果です。筆者は、これを対称な演算子と言うことにしました。数学の用語では、交換法則が成り立つ演算子と言います。引き算と割り算とでは、A,Bを入れ換えると別の結果になります。これを明示的に説明するとき、「演算を左辺値から右辺値へ向う右方向で評価する」と言います。ところが、プログラミング言語でイコール記号を使う式、例えば「A=B」の意味は、右辺値を左辺値に代入する左向きの処理です。数学式を扱うとき、例えば「C=A+B」を「A+B=C」と書き換えても、意義的にはイコール記号の左右が等しいことを示します。しかし、プログラミング言語で演算の指示をする文では、この書き換えを許しません。紛らわしいことが、比較演算子の使い方のときに起こります。プログラミング言語のVisual Basicでは、Ifで始まる条件文の中で使うイコール記号は、左辺値と右辺値とが等しいときにTrueを返す論理演算子です。C言語では、代入文との紛らわしさを避けるため、左右が等しいことを評価する比較演算子の方は、==としています。
科学書刊株式会社:電子版 「橋梁&都市 PROJECT: 2012」

前ページ  次ページ