判斷的功能,使得程式具有一點點寫程式者所值入的〝智慧〞,讓程式能針對一些預先設定的未定狀況有所因應。一個好的程式所能夠展現的功能是千變萬化,沒有極限的。(極限在於程式寫作者的想像力!)
最簡單的 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.( ) 把數個條件取聯集或交集來作為成立與否的依據。