関係式

関係式は,2 つ以上の式の値を比較して,関係演算子によって記述されている関係が満たされているかどうかを決定します。以下に関係演算子を示します。

演算子 関係
.LT. または < より小さい
.LE. または <= 以下
.EQ. または == 等しい
.NE. または /= 等しくない
.GT. または > より大きい
.GE. または >= 以上

関係式の結果は,演算子によって指定された関係が満たされている場合は .TRUE. で,演算子によって指定された関係が満たされていない場合は .FALSE. です。

関係演算子はすべて同じ優先順位を持ちます。数値演算子と文字組込み演算子 (//) は,関係演算子よりも高い優先順位を持ちます。

数値関係式では,演算対象は数値式です。次の例を考えます。

	APPLE+PEACH > PEAR+ORANGE

この式は,APPLEPEACH の和が,PEARORANGE の和よりも大きいと述べています。この関係が正しければ式の値は .TRUE. になり,正しくなければ値は .FALSE. になります。

複素数型演算対象は,「等しい」演算子 (== または .EQ.) か「等しくない」演算子 (/= または .NE.) でしか比較できません。複素数言語要素は,対応する実部と虚部の両方が等しい場合に等しくなります。

文字関係式では,演算対象は文字式です。文字関係式では,「より小」(< または .LT.) は文字値が ASCII 大小順序で前の方にあるという意味を持ち,「より大」(> または .GT.) は文字値が ASCII 大小順序で後の方にあるという意味を持ちます。

	'AB'//'ZZZ' .LT. 'CCCCC'

この式は,'ABZZZ''CCCCC' よりも小さいと述べています。この例では,演算子が指定している関係は満たされているので,結果は .TRUE. となります。

文字型演算対象は,各演算対象の最初の文字から,順番に 1 文字ずつ比較されます。2 つの文字型演算対象が同じ長さでない場合,長さが等しくなるまで,短い方の演算対象の右側に空白が充填されます。

	'ABC' .EQ. 'ABC  '

	'AB' .LT. 'C'

第 1 の関係式は,式の長さが等しくないにもかかわらず .TRUE. の値を持ちます。第 2 の関係式は,'AB''C' よりも長いにもかかわらず .TRUE. の値を持ちます。

関係式は,異なるデータ型の 2 つの数値式を比較することができます。この場合,比較を行う前に順位の低いデータ型の式の値は,順位の高いデータ型に変換されます。

関連情報

データ型の順位の詳細については,「数値式のデータ型」を参照してください。