7. 논리식 (Logical expressions)

논리식 (logical expression)은 .TRUE. 이나 .FALSE.의 값만이 가능하다. 논리식은 다음과 같은 관계 연산자 relational operators를 이용하여 수식을 비교하여 결정한다.
      .LT.  meaning <
      .LE.          <=
      .GT.          >
      .GE.          >=
      .EQ.          =
      .NE.          /=
따라서 Fortran 77에서는 비교하기 위하여 < 나 = 같은 부호를 사용할 수 없고 알맞은 두 문자 약호 앞뒤에 점을 찍어 사용하여야 한다. (부호는 Fortran 90에서는 사용 가능하다.)

논리식은 그 뜻이 분명한 논리 연산자logical operators .AND. .OR. .NOT.와 결합할 수 있다.

논리 변수와 지정 (Logical variables and assignment)

참인지 거짓인지는 논리 변수logical variables에 저장할 수 있다. 지정은 수식 지정과 비슷하다.
      logical a, b
      a = .TRUE.
      b = a .AND. 3 .LT. 5/2
마지막 예에서 보듯 우선 순위는 중요하다. 수식의 값 구하는 것이 가장 먼저이고 다음에 관계 연산자, 마지막으로 논리 연산자이다. 따라서 위 예에서 b는 .FALSE.가 될 것이다.

Fortran에서 논리 변수는 거의 사용하지 않는다. 하지만 if문과 같은 조건문 (conditional statement)에서는 논리식(logical expression)을 자주 사용한다.


Exercises

Exercise A
다음 논리식의 값을 구하라.
      .TRUE. .AND. .FALSE. .OR. .TRUE.
      2.LT.2 .OR. 5 .EQ. 11/2


[Fortran Tutorial]
충남대학교 물리학과 오 병성