Fortran-relational-operators

提供:Dev Guides
移動先:案内検索

Fortran-関係演算子

次の表は、Fortranでサポートされているすべての関係演算子を示しています。 変数 A が10を保持し、変数 B が20を保持すると仮定します-

Operator Equivalent Description Example
== .eq. Checks if the values of two operands are equal or not, if yes then condition becomes true. (A == B) is not true.
/= .ne. Checks if the values of two operands are equal or not, if values are not equal then condition becomes true. (A != B) is true.
> .gt. Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (A > B) is not true.
< .lt. Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (A < B) is true.
>= .ge. Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (A >= B) is not true.
.le. Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (A ⇐ B) is true.

Fortranで利用可能なすべての論理演算子を理解するために、次の例を試してください-

! this program checks relational operators
implicit none

   ! variable declaration
   integer :: a, b

   ! assigning values
   a = 10
   b = 20

   if (a .eq. b) then
      print *, "Line 1 - a is equal to b"
   else
      print *, "Line 1 - a is not equal to b"
   end if

   if (a > b) then
      print *, "Line 2 - a is greater than b"
   else
      print *, "Line 2 - a is less than b"
   end if

   if (a <= b) then
      print *, "Line 3 - a is less than or equal to b"
   else
      print *, "Line 3 - a is greater than b"
   end if

   a = 20
   b = 20

   if (a .eq. b) then
      print *, "Line 4 - a is equal to b"
   else
      print *, "Line 4 - a is not equal to b"
   end if
end

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

Line 1 - a is not equal to b
Line 2 - a is less than b
Line 3 - a is less than or equal to b
Line 4 - a is equal to b