判斷

 

判斷的功能,使得程式具有一點點寫程式者所值入的〝智慧〞,讓程式能針對一些預先設定的未定狀況有所因應。一個好的程式所能夠展現的功能是千變萬化,沒有極限的。(極限在於程式寫作者的想像力!)

最簡單的 IF 用法是

IF (判斷條件)

此敘述的效果是,若括號內的〝判斷條件〞成立,則執行其後的〝單一指令〞,至於判斷條件,在此介紹較常用的算術條件,即像 若 a>0 、若 a≠0 之類的


數學式 程式 意義
> .GT. G ← Greater
.GE. T ← Than
= .EQ. E ← Equal
.LE. L ← Less
< .LT.  
.NE. N ← Not

 

例如:若 A 的值是負的,則把它設成零的指令如下:

IF (A .LT. 0.0) A = (-1)*A

 

另一種也常用的標準判斷結構,則是 IF ... THAN ... ELSE ... ENDIF 的兩段式形式,若判斷條件成立則執行緊隨 THAN 之後到 ELSE 為止的程式區塊;判斷條件不成立則執行緊隨 ELSE 之後到 ENDIF 為止的程式區塊:

IF (判斷條件) THEN

..【成立時執行的諸程式行】..

ELSE

..【不成立時執行諸程式行】..

END IF

 

補充:判斷條件可以是兩個或多個以上算術判斷的聯集或交集,如

IF ((A .GT. 0.0) . AND . (B .NE. 0.0)) THEN

或是

IF ((A .NE. 0.0) .OR. (B .NE. 0.0) .OR. (C .NE. 0.0)) THEN

( ).AND.( ) 或 ( ).OR.( ) 把數個條件取聯集或交集來作為成立與否的依據。