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]
Ãæ³²´ëÇб³ ¹°¸®Çаú ¿À º´¼º